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. jecovier/laravel-inertia-routes

ActiveLibrary

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

Automatically create routes for any inertia component.

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

Since Dec 3Pushed 4y 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 2d 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 27% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity51

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

1816d 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

[kiwilan/typescriptable-laravel

PHP package for Laravel to type Eloquent models, routes, Spatie Settings with autogenerated TypeScript. If you want to use some helpers with Inertia, you can install associated NPM package.

3920.9k](/packages/kiwilan-typescriptable-laravel)[kompo/kompo

Laravel &amp; Vue.js FullStack Components for Rapid Application Development

11812.4k21](/packages/kompo-kompo)

PHPackages © 2026

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