PHPackages                             jecovier/laravel-inertia-routes - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. jecovier/laravel-inertia-routes

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

jecovier/laravel-inertia-routes
===============================

Automatically create routes for any inertia component.

0.0.4(5y ago)011MITPHPPHP ^7.3|^8.0

Since Dec 3Pushed 5y ago1 watchersCompare

[ Source](https://github.com/jecovier/laravel-inertia-routes)[ Packagist](https://packagist.org/packages/jecovier/laravel-inertia-routes)[ RSS](/packages/jecovier-laravel-inertia-routes/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (3)Dependencies (2)Versions (5)Used By (0)

Laravel Inertia Routes
======================

[](#laravel-inertia-routes)

```
/**
 * /resources/js/Pages/folder/component.vue
 * http://your-domain.com/folder/component
 */
InertiaRoute::get('folder/component');

/**
 * Change route:
 * /resources/js/Pages/folder/component.vue
 * http://your-domain.com/about
 */
InertiaRoute::get('about', 'folder/component');

/**
 * Automatically:
 * /resources/js/Pages/folder/component.vue
 * http://your-domain.com/folder/component
 */
InertiaRoute::bind('folder');

// change framework
InertiaRoute::vue();
InertiaRoute::react();
InertiaRoute::svelte();
```

Installation
------------

[](#installation)

```
composer require jecovier/laravel-inertia-routes

```

Usage
-----

[](#usage)

### Single component

[](#single-component)

```
/**
 * /resources/js/Pages/folder/component.vue
 * http://your-domain.com/folder/component
 */
InertiaRoute::get('folder/component');

/**
 * Change route:
 * /resources/js/Pages/folder/component.vue
 * http://your-domain.com/about
 */
InertiaRoute::get('about', 'folder/component');
InertiaRoute::get('/', 'folder/component');
```

Also you can use other verbs:

```
InertiaRoute::get('folder/component');
InertiaRoute::post('folder/component');
InertiaRoute::put('folder/component');
InertiaRoute::delete('folder/component');
InertiaRoute::patch('folder/component');
```

### Bind folder

[](#bind-folder)

Bind all components inside a folder:

```
InertiaRoute::bind('some/folder/');
```

If you have components like:

```
resources/js/Pages/components/folder/index.vue
resources/js/Pages/components/folder/about.vue
resources/js/Pages/components/folder/anotherPage.vue

```

Now you can access them using:

```
http://yourdomain.com/some/folder/
http://yourdomain.com/some/folder/about
http://yourdomain.com/some/folder/anotherPage

```

You can change routes for folders using:

```
InertiaRoute::bind('you/route', 'some/folder/');
```

**IMPORTANT!** InertiaRoute::bind use a "catch all" strategy, so put this route at the end of your route file or group.

### Parameters

[](#parameters)

If you want to use route paramaters(without any backend proccess) you could define a route like this:

```
InertiaRoute::get('/route/{name}', 'folder/component');
```

And your component will receive parameters as props:

vue:

```

export default{
    props: {
        name: { required:true }
    }
}

```

svelte:

```
export let name
```

Reat:

```
// I don't know react :(

```

Also you can use:

```
InertiaRoute::get('folder/component/{name}');
```

Middlewares... Prefixes... Can...
---------------------------------

[](#middlewares-prefixes-can)

InertiaRoute returns a Route object instance, so you can chained other methods:

```
InertiaRoute::get('/route/{parameter}', 'folder/component')
    ->middleware('validateParameter')
    ->can('viewThis');
```

404
---

[](#404)

InertiaRoute verifies if the file exist before try to render it. In case you want to access a non existing component, it will display a 404 page.

Svelte or React
---------------

[](#svelte-or-react)

By default InertiaRoute will render Vue files. But, if you are working with React or Svelte, you could easily switch to those frameworks.

In case of **React**:

```
InertiaRoute::react();
InertiaRoute::get('path/to/component/{parameter}');
```

And for **Svelte**:

```
InertiaRoute::svelte();
InertiaRoute::get('path/to/component/{parameter}');
```

Remember to change framework before declare routes.

Change root path
----------------

[](#change-root-path)

Inertiajs suggests resources/js/Pages as default folder, however, you may be use another path. If that is the case, you can change your root folder with:

```
InertiaRoute::root('your/new/path');
```

Consider that InertiaRoute automatically use the laravel folder as root, so the final path will be: /laravel-project-folder/your/new/path/

Contribution
------------

[](#contribution)

Yes, please. This is a little library make in my spare time, any PR is welcome 🙌.

License
-------

[](#license)

MIT

###  Health Score

23

—

LowBetter than 26% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~57 days

Total

4

Last Release

1868d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/3135068?v=4)[Jose Javier Espinoza](/maintainers/jecovier)[@jecovier](https://github.com/jecovier)

---

Top Contributors

[![jecovier](https://avatars.githubusercontent.com/u/3135068?v=4)](https://github.com/jecovier "jecovier (16 commits)")

---

Tags

phplaravelroutesinertiareactautomaticvuesveltejecovier

### Embed Badge

![Health badge](/badges/jecovier-laravel-inertia-routes/health.svg)

```
[![Health](https://phpackages.com/badges/jecovier-laravel-inertia-routes/health.svg)](https://phpackages.com/packages/jecovier-laravel-inertia-routes)
```

###  Alternatives

[statamic/cms

The Statamic CMS Core Package

4.8k3.6M988](/packages/statamic-cms)[emargareten/inertia-modal

Inertia Modal is a Laravel package that lets you implement backend-driven modal dialogs for Inertia apps.

90142.9k](/packages/emargareten-inertia-modal)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
