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.10.0.tar.gz (168.3 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.10.0-py3-none-any.whl (188.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nestipy_cli-0.10.0.tar.gz
  • Upload date:
  • Size: 168.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.21

File hashes

Hashes for nestipy_cli-0.10.0.tar.gz
Algorithm Hash digest
SHA256 a80f151b8da3a8455eac230f999749ca99541514090be0e8fce459cf881926c1
MD5 662a88e3fca9c7f813ded8c4ff1ea356
BLAKE2b-256 4b55cab06bff150c8685fc1d298bab495b7b4a96cb2690b3a4a67697c7b406e2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nestipy_cli-0.10.0-py3-none-any.whl
Algorithm Hash digest
SHA256 60339a51aaa8893ae87a70efb5c2f24ee28a1e5b47e95d1bd924bcfe654705a0
MD5 1102aa91bf5bbf8767eb73893ea926aa
BLAKE2b-256 cfd6c945041a48567ca0f3e1e135eb6424033dbd435c18b0f6cfbec884ddd9a9

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