Skip to main content

Laravel-style project structure for FastAPI

Project description

Wirepy

Wirepy is a Python project scaffolding tool designed to accelerate the development of FastAPI-based applications. It provides a command-line interface (CLI) to generate boilerplate code, manage migrations, and organize your project structure following best practices.

Features

  • CLI Tooling: Easily scaffold new FastAPI projects and components.
  • Project Templates: Predefined templates for controllers, models, routes, schemas, services, and core utilities.
  • Database Integration: Built-in support for database configuration and migrations using Alembic.
  • Environment Management: Template for .env and requirements management.

Folder Structure

wirepy/
├── wirepy/
│   ├── __init__.py
│   ├── cli.py
│   ├── scaffold.py
│   ├── migrations.py
│   └── templates/
│        ├── app/
│        │   ├── controllers/
│        │   ├── models/
│        │   ├── routes/
│        │   ├── schemas/
│        │   ├── services/
│        │   └── core/
│        │       ├── config.py
│        │       └── database.py
│        ├── __init__.py
│        ├── alembic/
│        ├── alembic.ini
│        ├── main.py
│        ├── .env
│        ├── requirements.txt
│        └── README.md
├── pyproject.toml
├── venv (your local virtual environment)
├── README.md
├── LICENSE

Getting Started

  1. Clone the repository:
    git clone <repo-url>
    cd wirepy
    
  2. Create a virtual environment:
    python3 -m venv vvenv
    source vvenv/bin/activate
    
  3. Install dependencies:
    pip install -r wirepy/templates/requirements.txt
    
  4. Use the CLI to scaffold a new project or component:
    python -m wirepy.cli <command>
    

License

This project is licensed under the terms of the MIT License. See the LICENSE file for details.

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

wirepy-0.1.5.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

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

wirepy-0.1.5-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file wirepy-0.1.5.tar.gz.

File metadata

  • Download URL: wirepy-0.1.5.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.0

File hashes

Hashes for wirepy-0.1.5.tar.gz
Algorithm Hash digest
SHA256 08cf384946a7826a5a33be620f15d269abfd6f65029f72cf1141a822517779f3
MD5 eff845521a09d3d2b90ffa14cacb1142
BLAKE2b-256 f0643cfcb34e783c540a9ad69d8c3a61c8f746647e27c345b3cfd626474d14f5

See more details on using hashes here.

File details

Details for the file wirepy-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: wirepy-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.0

File hashes

Hashes for wirepy-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e18118569d120b4e0fe9b8715d6090a5dd0990ac2fadf75012829bd5c62d0079
MD5 d72f69110ae96fa49054751ed58ac8e5
BLAKE2b-256 1c17e9d91d45be992252b627e8c3363f831203e9afbc2e804468774e45b325f2

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