Inspira is a lightweight framework for building asynchronous web applications.
Project description
Inspira
Inspira is a lightweight framework for building asynchronous web applications.
Quick Start
Prerequisites
Make sure you have Python and pip
installed on your system.
Create a Python Virtual Environment
# Create a new directory for your project
mkdir myproject
cd myproject
Create and activate a virtual environment
python -m venv venv
source venv/bin/activate # On Windows, use `venv\Scripts\activate`
Install Inspira
pip install inspira
Generating an App
To generate a new app for your project, run the following command:
inspira init
Generate Database file
Use the following command to generate a database file:
inspira new database --name mydb --type sqlite
This command will create a new database file named mydb
with SQLite
as the database type.
The generated database file (database.py
) will typically contain initial configurations and may look like this:
from sqlalchemy import create_engine
from sqlalchemy.orm import declarative_base, scoped_session, sessionmaker
engine = create_engine("sqlite:///mydb.db")
db_session = scoped_session(
sessionmaker(autocommit=False, autoflush=False, bind=engine)
)
Base = declarative_base()
Base.query = db_session.query_property()
def init_db():
Base.metadata.create_all(bind=engine)
Generating Modules
To generate necessary resources for your project, run the following command:
inspira new module orders
Generated Directory Structure
After running the command to generate a new module (inspira new module orders
), the directory structure of your project should look like the following:
├── main.py
├── database.py
└── src
└── orders
├── __init__.py
├── order.py
├── order_controller.py
└── order_repository.py
└── order_service.py
Starting the Server
After generating your app and setting up the necessary resources, start the server with the following command:
uvicorn main:app --reload
Links
Documentation: https://www.inspiraframework.com/
License
This project is licensed under the terms of the MIT license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file inspira-0.2.1.tar.gz
.
File metadata
- Download URL: inspira-0.2.1.tar.gz
- Upload date:
- Size: 17.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8115ca7f46e584d3d0e650e7a16566e0daccf53bd9ae667e8eb3e372ecf3604f |
|
MD5 | f71bb2b7bdb5975a51c6c2b5d35c6f5e |
|
BLAKE2b-256 | c1817aad6f635bdad377a71f5a63f8892d9c4bdfe6ed3c8fdbb486949d95d614 |
File details
Details for the file inspira-0.2.1-py3-none-any.whl
.
File metadata
- Download URL: inspira-0.2.1-py3-none-any.whl
- Upload date:
- Size: 29.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea7716e21a0a17393d3197842b86847e815f9bfbee03a402c0807e68be611992 |
|
MD5 | 419122f4018aad68b6dcb347c79fdace |
|
BLAKE2b-256 | cd4b9e654fc80f4b7bfc9c0255dfbe377291502dc10b8ff2a53aa782d48a38f7 |