Skip to main content

Nestipy is a Python framework built on top of FastAPI that follows the modular architecture of NestJS

Project description

Nestipy Logo

Version Python License

Description

Nestipy is a Python framework built on top of FastAPI that follows the modular architecture of NestJS

Under the hood, Nestipy makes use of FastAPI, but also provides compatibility with a wide range of other libraries, like Blacksheep, allowing for easy use of the myriad of third-party plugins which are available.

Getting started

    pip install nestipy-cli
    nestipy new my_app
    cd my_app
    nestipy start --dev
    ├── src
    │    ├── __init__.py
    ├── app_module.py
    ├── app_controller.py
    ├── app_service.py
    ├── main.py
    ├── pyproject.toml
    ├── uv.lock
    ├── README.md
    
       

Documentation

View full documentation from here.

Support

Nestipy is an MIT-licensed open source project. It can grow thanks to the sponsors and support from the amazing backers. If you'd like to join them, please [read more here].

Stay in touch

License

Nestipy is MIT licensed.

Nestipy Web (Frontend)

Create a fullstack scaffold with the web UI:

    nestipy new my_app --web
    cd my_app
    nestipy start --dev --web --web-args "--vite --install"

Production static serving:

    nestipy run web:build
    nestipy start --web

Check environment health:

    nestipy doctor

Nested Layouts

You can add layout.py files in any folder under app/. The compiler nests layouts to match the folder structure (similar to Next.js).

  • app/layout.py wraps every page.
  • app/api/layout.py wraps only /api/*.

Import rules:

  • from layout import X resolves to the nearest layout.
  • from app.layout import X forces the root layout.

Action Security (Presets)

The CLI exposes flags to enable default Web Action security presets. These map to environment variables consumed by ActionsModule.for_root.

Examples:

nestipy start --dev --action-security --action-origins "http://localhost:5173" --action-csrf

Available flags:

  • --action-security/--no-action-security
  • --action-origins
  • --action-allow-missing-origin/--no-action-allow-missing-origin
  • --action-csrf/--no-action-csrf
  • --action-signature-secret
  • --action-permissions/--no-action-permissions

notfound.py (Planned)

We plan to add notfound.py at any level to define client-side 404 screens for that subtree, mirroring Next.js behavior.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nestipy_cli-0.11.1.tar.gz (177.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nestipy_cli-0.11.1-py3-none-any.whl (210.4 kB view details)

Uploaded Python 3

File details

Details for the file nestipy_cli-0.11.1.tar.gz.

File metadata

  • Download URL: nestipy_cli-0.11.1.tar.gz
  • Upload date:
  • Size: 177.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nestipy_cli-0.11.1.tar.gz
Algorithm Hash digest
SHA256 b5cf0ce19927a2e0814ef5a968f58e8a491590d7e504e603eccb71bdde8e1dea
MD5 dd096765f44a8a5a5bc69c4320bff54c
BLAKE2b-256 fc997bef21caa017cedb088fdf099fbd10ba25dc67a0bf5ecff09c748871a53b

See more details on using hashes here.

File details

Details for the file nestipy_cli-0.11.1-py3-none-any.whl.

File metadata

  • Download URL: nestipy_cli-0.11.1-py3-none-any.whl
  • Upload date:
  • Size: 210.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for nestipy_cli-0.11.1-py3-none-any.whl
Algorithm Hash digest
SHA256 533394a6805580e72105b180d23d89df96a32b5813dfb7e8ab75d7b6f64a6829
MD5 12df2badf7c19c3a4006f8fc2f8e2679
BLAKE2b-256 8152142be25736c0033eb2f83517c643281dfd767f9a4e26ff432a03323e3ca7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page