inertia-masonite


Nameinertia-masonite JSON
Version 4.2.11 PyPI version JSON
download
home_pagehttps://github.com/eaguad1337/masonite-inertia
SummaryServer-side Masonite adapter for Inertia.js
upload_time2024-03-01 00:24:43
maintainer
docs_urlNone
authorSamuel Girardin
requires_python
licenseMIT license
keywords masonite python inertia.js
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <p align="center">
    <img src="https://banners.beyondco.de/Masonite%20Inertia.png?theme=light&packageManager=pip+install&packageName=inertia-masonite&pattern=topography&style=style_1&description=Masonite%20Inertia%20server-side%20adapter&md=1&showWatermark=1&fontSize=100px&images=https%3A%2F%2Fgblobscdn.gitbook.com%2Fspaces%2F-L9uc-9XAlqhXkBwrLMA%2Favatar.png">
</p>

<p align="center">
  <a href="https://docs.masoniteproject.com">
    <img alt="Masonite Package" src="https://img.shields.io/static/v1?label=Masonite&message=package&labelColor=grey&color=blue&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAAXNSR0IArs4c6QAAAIRlWElmTU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAA6gAwAEAAAAAQAAAA4AAAAATspU+QAAAAlwSFlzAAALEwAACxMBAJqcGAAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KTMInWQAAAnxJREFUKBVNUl1IVEEUPjPObdd1VdxWM0rMIl3bzbVWLSofVm3th0AhMakHHyqRiNSHEAq5b2HSVvoQRUiEECQUQkkPbRslRGigG8auoon2oPSjpev+3PWeZq7eaC5nDt93vplz5txDQJYpNxX4st4JFiwj9aCqmswUFQNS/A2YskrZJPYefkECC2GhQwAqvLYybwXrwBvq8HSNOXRO92+aH7nW8vc/wS2Z9TqneYt2KHjlf9Iv+43wFJMExzO0YE5OKe60N+AOW6OmE+WJTBrg23jjzWxMBauOlfyycsV24F+cH+zAXYUOGl+DaiDxfl245/W9OnVrSY+O2eqPkyz4sVvHoKp9gOihf5KoAVv3hkQgbj/ihG9fI3RixKcUVx7lJVaEc0vnyf2FFll+ny80ZHZiGhIKowWJBCEAKr+FSuNDLt+lxybSF51lo74arqs113dOZqwsptxNs5bwi7Q3q8npSC2AWmvjTncZf1l61e5DEizNn5mtufpsqk5+CZTuq00sP1wkNPv8jeEikVVlJso+GEwRtNs3QeBt2YP2V2ZI3Tx0e+7T89zK5tNASOLEytJAryGtkLc2PcBM5byyUWYkMQpMioYcDcchC6xN220Iv36Ot8pV0454RHLEwmmD7UWfIdX0zq3GjMPG5NKBtv5qiPEPekK2U51j1451BZoc3i+1ohSQ/UzzG5uYFFn2mwVUnO4O3JblXA91T51l3pB3QweDl7sNXMyEjbguSjrPcQNmwDkNc8CbCvDd0+xCC7RFi9wFulD3mJeXqxQevB4prrqgc0TmQ85NG/K43e2UwnMVAJIEBNfWRYR3HfnvivrIzMyo4Hgy+hfscvLo53jItAAAAABJRU5ErkJggg==">
  </a>
  <img alt="GitHub Workflow Status (branch)" src="https://img.shields.io/github/workflow/status/eaguad1337/inertia-masonite/Test%20Application/2.X">
  <img src="https://codecov.io/gh/eaguad1337/inertia-masonite/branch/2.X/graph/badge.svg?token=7W8Y6UVUAT"/>
  <img src="https://img.shields.io/badge/python-3.6+-blue.svg" alt="Python Version">
  <img alt="PyPI" src="https://img.shields.io/pypi/v/inertia-masonite">
  <img alt="License" src="https://img.shields.io/github/license/eaguad1337/inertia-masonite">
  <a href="https://github.com/psf/black"><img alt="Code style: black" src="https://img.shields.io/badge/code%20style-black-000000.svg"></a>
</p>

## Introduction

Inertia is a new approach to building classic server-driven web apps. From their own web page:

> Inertia allows you to create fully client-side rendered, single-page apps, without much of the complexity that comes with modern SPAs. It does this by leveraging existing server-side frameworks.

Inertia requires an adapter for each backend framework. This repo contains the Masonite server-side adapter for [Inertia.js](https://inertiajs.com/).
You can find the legacy Inertia PingCRM demo with Masonite here [demo (WIP)](https://github.com/girardinsamuel/pingcrm-masonite).

[Documentation 📚](https://samuelgirardin.gitbook.io/inertia-masonite)
[Quick Start ⚡️](#installation)

## Features

Almost all features of the official server-side adapters are present 😃

- Shared data
- Partial reloads
- Lazy loaded props
- Set root view in a provider
- Set root view per view
- Enable sharing Masonite routes (prefer using [masonite-js-routes](https://github.com/girardinsamuel/masonite-js-routes))
- Enable sharing Masonite flash messages

## Official Masonite Documentation

New to Masonite ? Please first read the [Official Documentation](https://docs.masoniteproject.com/).
Masonite strives to have extremely comprehensive documentation 😃. It would be wise to go through the tutorials there.
If you find any discrepencies or anything that doesn't make sense, be sure to comment directly on the documentation to start a discussion!

Hop on [Masonite Discord Community](https://discord.gg/TwKeFahmPZ) to ask any questions you need!

## Installation

**Requirements**

To get started you will need the following:

- Masonite 4.X (use `inertia-masonite>=4.0`) / Masonite 3.X(use `inertia-masonite>=3.0`) / Masonite 2.3 (use `inertia-masonite>=2.X<3.0`)
- Laravel Mix installed (new Masonite projects come with this installed already)
- a Node.js environment (npm or yarn)

```bash
pip install inertia-masonite
```

**Install NPM dependencies**

First we'll need to install some NPM packages (we are using Vue 3 here as frontend framework and `inertia-vue3` as Inertia.js client-side adapter). You can find more info on this on [Inertia.js documentation](https://inertiajs.com/client-side-setup).

```
npm install vue @inertiajs/inertia @inertiajs/inertia-vue3
```

## Configuration

Add InertiaProvider to your project in `config/providers.py`:

```python
# config/providers.py
# ...
from masonite.inertia import InertiaProvider

# ...
PROVIDERS = [
    # ...

    # Third Party Providers
    InertiaProvider,
]
```

Inertia adapter comes with a middleware that will control some of the flow of data. Add InertiaMiddleware to your project in `HttpKernel`:

```python
# AppHttpKernel.py

from masonite.inertia import InertiaMiddleware

class AppHttpKernel(HttpKernel):
    http_middleware = [InertiaMiddleware]
    route_middleware = {
      "web": [EncryptCookies, SessionMiddleware, VerifyCsrfToken]
    }
```

Make sure that this middleware is added in HTTP middlewares and that EncryptCookies middleware is added as a route middleware else you will get some issues with CSRF token validation as `XSRF-TOKEN` value won't be encrypted.

Finally if you want to change some parameters you can publish the package configuration file in your project:

```bash
python craft package:publish inertia
```

Congratulations! You have now setup Inertia in your project! For more information on how to use Inertia.js got to its [documentation](https://inertiajs.com/installation).

## Getting started

This section quickly explains how to use Inertia.js with Masonite. For more details please [read the documentation 📚](https://samuelgirardin.gitbook.io/inertia-masonite).

### How to use Inertia.js with Masonite adapter

We will create two routes and a controller which will load the two components scaffolded with previous command and see Inertia.js behaviour. In order to create Inertia response in our Controller, we are going to use newly available response `Inertia`. And that's it !

If you scaffolded the inertia demo you will already have the files, else:

```
python craft controller WelcomeController
```

This will create a controller `WelcomeController` but you can name it whatever you like. It would be good to keep the standard of whatever setup you have now for your home page. Then create two routes to that controller if you don't have them already:

```python
ROUTES = [
    Route.get('/', 'WelcomeController@index'),
    Route.get('/helloworld', 'WelcomeController@helloworld')
]
```

And finally create the controller methods. We just need to use the new `Inertia` to render our controller.

```python
# app/controllers/InertiaController.py
from masonite.inertia import Inertia

## ..
def inertia(self, view: Inertia):
    return view.render('Index')

def helloworld(self, view: Inertia):
  return view.render('HelloWorld')

## ..
```

This controller will render the view based on template `templates/app.html` and will load the Vue components into it depending on the route.
Note that instead of specifying a Jinja template like we normally do we can just specify a page here. So since we have `../pages/Index.vue` we specify to render `Index` here.

### Test it !

Ok now we need to do 2 more commands. The first thing is to run `npm run dev` (at root) to compile all of this (with webpack mix):

```
npm run dev
```

Now we can run the server like we normally do:

```
python craft serve
```

When we go to our homepage we will see we see `Index.vue` component:

```
Home Page
```

Click on the link you can now see `HelloWorld` without page refresh !!!!

## Contributing

Please read the [Contributing Documentation](CONTRIBUTING.md) here.

## Maintainers

- [Samuel Girardin](https://www.github.com/girardinsamuel)

Thanks to [Joseph Mancuso](https://github.com/josephmancuso) for making the PoC to couple Masonite and Inertia.js !

## License

Masonite Inertia is open-sourced software licensed under the [MIT license](LICENSE).

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/eaguad1337/masonite-inertia",
    "name": "inertia-masonite",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "Masonite,Python,Inertia.js",
    "author": "Samuel Girardin",
    "author_email": "samuelgirardin@pm.me",
    "download_url": "https://files.pythonhosted.org/packages/68/92/bd714a0c9c13aa6e81cdf22547de98905bd5e7f9b70aad1e4e4c90908a98/inertia-masonite-4.2.11.tar.gz",
    "platform": null,
    "description": "<p align=\"center\">\n    <img src=\"https://banners.beyondco.de/Masonite%20Inertia.png?theme=light&packageManager=pip+install&packageName=inertia-masonite&pattern=topography&style=style_1&description=Masonite%20Inertia%20server-side%20adapter&md=1&showWatermark=1&fontSize=100px&images=https%3A%2F%2Fgblobscdn.gitbook.com%2Fspaces%2F-L9uc-9XAlqhXkBwrLMA%2Favatar.png\">\n</p>\n\n<p align=\"center\">\n  <a href=\"https://docs.masoniteproject.com\">\n    <img alt=\"Masonite Package\" src=\"https://img.shields.io/static/v1?label=Masonite&message=package&labelColor=grey&color=blue&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAAXNSR0IArs4c6QAAAIRlWElmTU0AKgAAAAgABQESAAMAAAABAAEAAAEaAAUAAAABAAAASgEbAAUAAAABAAAAUgEoAAMAAAABAAIAAIdpAAQAAAABAAAAWgAAAAAAAABIAAAAAQAAAEgAAAABAAOgAQADAAAAAQABAACgAgAEAAAAAQAAAA6gAwAEAAAAAQAAAA4AAAAATspU+QAAAAlwSFlzAAALEwAACxMBAJqcGAAAAVlpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KTMInWQAAAnxJREFUKBVNUl1IVEEUPjPObdd1VdxWM0rMIl3bzbVWLSofVm3th0AhMakHHyqRiNSHEAq5b2HSVvoQRUiEECQUQkkPbRslRGigG8auoon2oPSjpev+3PWeZq7eaC5nDt93vplz5txDQJYpNxX4st4JFiwj9aCqmswUFQNS/A2YskrZJPYefkECC2GhQwAqvLYybwXrwBvq8HSNOXRO92+aH7nW8vc/wS2Z9TqneYt2KHjlf9Iv+43wFJMExzO0YE5OKe60N+AOW6OmE+WJTBrg23jjzWxMBauOlfyycsV24F+cH+zAXYUOGl+DaiDxfl245/W9OnVrSY+O2eqPkyz4sVvHoKp9gOihf5KoAVv3hkQgbj/ihG9fI3RixKcUVx7lJVaEc0vnyf2FFll+ny80ZHZiGhIKowWJBCEAKr+FSuNDLt+lxybSF51lo74arqs113dOZqwsptxNs5bwi7Q3q8npSC2AWmvjTncZf1l61e5DEizNn5mtufpsqk5+CZTuq00sP1wkNPv8jeEikVVlJso+GEwRtNs3QeBt2YP2V2ZI3Tx0e+7T89zK5tNASOLEytJAryGtkLc2PcBM5byyUWYkMQpMioYcDcchC6xN220Iv36Ot8pV0454RHLEwmmD7UWfIdX0zq3GjMPG5NKBtv5qiPEPekK2U51j1451BZoc3i+1ohSQ/UzzG5uYFFn2mwVUnO4O3JblXA91T51l3pB3QweDl7sNXMyEjbguSjrPcQNmwDkNc8CbCvDd0+xCC7RFi9wFulD3mJeXqxQevB4prrqgc0TmQ85NG/K43e2UwnMVAJIEBNfWRYR3HfnvivrIzMyo4Hgy+hfscvLo53jItAAAAABJRU5ErkJggg==\">\n  </a>\n  <img alt=\"GitHub Workflow Status (branch)\" src=\"https://img.shields.io/github/workflow/status/eaguad1337/inertia-masonite/Test%20Application/2.X\">\n  <img src=\"https://codecov.io/gh/eaguad1337/inertia-masonite/branch/2.X/graph/badge.svg?token=7W8Y6UVUAT\"/>\n  <img src=\"https://img.shields.io/badge/python-3.6+-blue.svg\" alt=\"Python Version\">\n  <img alt=\"PyPI\" src=\"https://img.shields.io/pypi/v/inertia-masonite\">\n  <img alt=\"License\" src=\"https://img.shields.io/github/license/eaguad1337/inertia-masonite\">\n  <a href=\"https://github.com/psf/black\"><img alt=\"Code style: black\" src=\"https://img.shields.io/badge/code%20style-black-000000.svg\"></a>\n</p>\n\n## Introduction\n\nInertia is a new approach to building classic server-driven web apps. From their own web page:\n\n> Inertia allows you to create fully client-side rendered, single-page apps, without much of the complexity that comes with modern SPAs. It does this by leveraging existing server-side frameworks.\n\nInertia requires an adapter for each backend framework. This repo contains the Masonite server-side adapter for [Inertia.js](https://inertiajs.com/).\nYou can find the legacy Inertia PingCRM demo with Masonite here [demo (WIP)](https://github.com/girardinsamuel/pingcrm-masonite).\n\n[Documentation \ud83d\udcda](https://samuelgirardin.gitbook.io/inertia-masonite)\n[Quick Start \u26a1\ufe0f](#installation)\n\n## Features\n\nAlmost all features of the official server-side adapters are present \ud83d\ude03\n\n- Shared data\n- Partial reloads\n- Lazy loaded props\n- Set root view in a provider\n- Set root view per view\n- Enable sharing Masonite routes (prefer using [masonite-js-routes](https://github.com/girardinsamuel/masonite-js-routes))\n- Enable sharing Masonite flash messages\n\n## Official Masonite Documentation\n\nNew to Masonite ? Please first read the [Official Documentation](https://docs.masoniteproject.com/).\nMasonite strives to have extremely comprehensive documentation \ud83d\ude03. It would be wise to go through the tutorials there.\nIf you find any discrepencies or anything that doesn't make sense, be sure to comment directly on the documentation to start a discussion!\n\nHop on [Masonite Discord Community](https://discord.gg/TwKeFahmPZ) to ask any questions you need!\n\n## Installation\n\n**Requirements**\n\nTo get started you will need the following:\n\n- Masonite 4.X (use `inertia-masonite>=4.0`) / Masonite 3.X(use `inertia-masonite>=3.0`) / Masonite 2.3 (use `inertia-masonite>=2.X<3.0`)\n- Laravel Mix installed (new Masonite projects come with this installed already)\n- a Node.js environment (npm or yarn)\n\n```bash\npip install inertia-masonite\n```\n\n**Install NPM dependencies**\n\nFirst we'll need to install some NPM packages (we are using Vue 3 here as frontend framework and `inertia-vue3` as Inertia.js client-side adapter). You can find more info on this on [Inertia.js documentation](https://inertiajs.com/client-side-setup).\n\n```\nnpm install vue @inertiajs/inertia @inertiajs/inertia-vue3\n```\n\n## Configuration\n\nAdd InertiaProvider to your project in `config/providers.py`:\n\n```python\n# config/providers.py\n# ...\nfrom masonite.inertia import InertiaProvider\n\n# ...\nPROVIDERS = [\n    # ...\n\n    # Third Party Providers\n    InertiaProvider,\n]\n```\n\nInertia adapter comes with a middleware that will control some of the flow of data. Add InertiaMiddleware to your project in `HttpKernel`:\n\n```python\n# AppHttpKernel.py\n\nfrom masonite.inertia import InertiaMiddleware\n\nclass AppHttpKernel(HttpKernel):\n    http_middleware = [InertiaMiddleware]\n    route_middleware = {\n      \"web\": [EncryptCookies, SessionMiddleware, VerifyCsrfToken]\n    }\n```\n\nMake sure that this middleware is added in HTTP middlewares and that EncryptCookies middleware is added as a route middleware else you will get some issues with CSRF token validation as `XSRF-TOKEN` value won't be encrypted.\n\nFinally if you want to change some parameters you can publish the package configuration file in your project:\n\n```bash\npython craft package:publish inertia\n```\n\nCongratulations! You have now setup Inertia in your project! For more information on how to use Inertia.js got to its [documentation](https://inertiajs.com/installation).\n\n## Getting started\n\nThis section quickly explains how to use Inertia.js with Masonite. For more details please [read the documentation \ud83d\udcda](https://samuelgirardin.gitbook.io/inertia-masonite).\n\n### How to use Inertia.js with Masonite adapter\n\nWe will create two routes and a controller which will load the two components scaffolded with previous command and see Inertia.js behaviour. In order to create Inertia response in our Controller, we are going to use newly available response `Inertia`. And that's it !\n\nIf you scaffolded the inertia demo you will already have the files, else:\n\n```\npython craft controller WelcomeController\n```\n\nThis will create a controller `WelcomeController` but you can name it whatever you like. It would be good to keep the standard of whatever setup you have now for your home page. Then create two routes to that controller if you don't have them already:\n\n```python\nROUTES = [\n    Route.get('/', 'WelcomeController@index'),\n    Route.get('/helloworld', 'WelcomeController@helloworld')\n]\n```\n\nAnd finally create the controller methods. We just need to use the new `Inertia` to render our controller.\n\n```python\n# app/controllers/InertiaController.py\nfrom masonite.inertia import Inertia\n\n## ..\ndef inertia(self, view: Inertia):\n    return view.render('Index')\n\ndef helloworld(self, view: Inertia):\n  return view.render('HelloWorld')\n\n## ..\n```\n\nThis controller will render the view based on template `templates/app.html` and will load the Vue components into it depending on the route.\nNote that instead of specifying a Jinja template like we normally do we can just specify a page here. So since we have `../pages/Index.vue` we specify to render `Index` here.\n\n### Test it !\n\nOk now we need to do 2 more commands. The first thing is to run `npm run dev` (at root) to compile all of this (with webpack mix):\n\n```\nnpm run dev\n```\n\nNow we can run the server like we normally do:\n\n```\npython craft serve\n```\n\nWhen we go to our homepage we will see we see `Index.vue` component:\n\n```\nHome Page\n```\n\nClick on the link you can now see `HelloWorld` without page refresh !!!!\n\n## Contributing\n\nPlease read the [Contributing Documentation](CONTRIBUTING.md) here.\n\n## Maintainers\n\n- [Samuel Girardin](https://www.github.com/girardinsamuel)\n\nThanks to [Joseph Mancuso](https://github.com/josephmancuso) for making the PoC to couple Masonite and Inertia.js !\n\n## License\n\nMasonite Inertia is open-sourced software licensed under the [MIT license](LICENSE).\n",
    "bugtrack_url": null,
    "license": "MIT license",
    "summary": "Server-side Masonite adapter for Inertia.js",
    "version": "4.2.11",
    "project_urls": {
        "Homepage": "https://github.com/eaguad1337/masonite-inertia"
    },
    "split_keywords": [
        "masonite",
        "python",
        "inertia.js"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "79ef02e3dc4f4383919a1be28b5b36b235e23e2a275e5798252943e0a32530be",
                "md5": "e96f24af609ec8d625152c614b116545",
                "sha256": "16a68179325e1b7d93e8c569e4a8e37cbaa44e3f75f439e7c88b8c599cb1ea40"
            },
            "downloads": -1,
            "filename": "inertia_masonite-4.2.11-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e96f24af609ec8d625152c614b116545",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 14681,
            "upload_time": "2024-03-01T00:24:42",
            "upload_time_iso_8601": "2024-03-01T00:24:42.195193Z",
            "url": "https://files.pythonhosted.org/packages/79/ef/02e3dc4f4383919a1be28b5b36b235e23e2a275e5798252943e0a32530be/inertia_masonite-4.2.11-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6892bd714a0c9c13aa6e81cdf22547de98905bd5e7f9b70aad1e4e4c90908a98",
                "md5": "9907ed0dca92ce85b4d15ef04af95a7c",
                "sha256": "b33293242460994f5637f63854517b75e63683f3731f47822da6292123b3f841"
            },
            "downloads": -1,
            "filename": "inertia-masonite-4.2.11.tar.gz",
            "has_sig": false,
            "md5_digest": "9907ed0dca92ce85b4d15ef04af95a7c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 13595,
            "upload_time": "2024-03-01T00:24:43",
            "upload_time_iso_8601": "2024-03-01T00:24:43.440371Z",
            "url": "https://files.pythonhosted.org/packages/68/92/bd714a0c9c13aa6e81cdf22547de98905bd5e7f9b70aad1e4e4c90908a98/inertia-masonite-4.2.11.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-01 00:24:43",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "eaguad1337",
    "github_project": "masonite-inertia",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "inertia-masonite"
}
        
Elapsed time: 4.37950s