Um template para iniciar projetos FastAPI rapidamente
Project description
FastAPI Starter - Estruturas de Projeto 🚀
Bem-vindo ao FastAPI Starter! Este CLI permite que você inicie seu projeto FastAPI escolhendo entre 8 estruturas distintas, cada uma ideal para diferentes cenários de desenvolvimento. Escolha a que melhor se adapta às suas necessidades e comece a desenvolver com rapidez e organização! 😎
📂 Estruturas Disponíveis
1️⃣ AWS Structure (create_aws_structure) ☁️
Projetado para aplicações que serão implantadas na AWS.
Inclui:
- Diretórios para templates de CloudFormation e SAM
- Exemplo de integração com boto3 para listar buckets do S3
- Scripts para deploy e configurações para ambiente serverless
Ideal para: Aplicações nativas na nuvem, serverless, e integrações com AWS (Lambda, S3, DynamoDB, etc.).
2️⃣ Default Structure (create_default_structure) 🔹
A estrutura clássica para iniciar um projeto FastAPI com organização robusta.
Inclui:
- Diretórios para Kubernetes, código fonte em
src/, e testes - Exemplo de servidor FastAPI com rota simples
- Dockerfile, compose.yaml, e arquivos de CI/CD
Ideal para: Projetos que exigem uma base completa e organizada desde o início.
3️⃣ Minimal Structure (create_minimal_structure) ⚡
Uma versão enxuta, contendo somente o essencial para rodar sua API.
Inclui:
- Código fonte mínimo em
src/com um único arquivo de servidor - Testes básicos e dependências essenciais
Ideal para: Protótipos, provas de conceito e projetos simples onde menos é mais.
4️⃣ Advanced Structure (create_advanced_structure) 🚀
Uma estrutura modular e bem organizada, perfeita para aplicações de médio porte.
Inclui:
- Diretórios para endpoints, configuração centralizada, modelos e schemas
- Exemplo de rota avançada e Dockerfile configurado
- Suporte para ambientes de desenvolvimento com CI/CD
Ideal para: APIs que crescem com o tempo e necessitam de uma organização mais refinada.
5️⃣ Enterprise Structure (create_enterprise_structure) 🏢
Voltada para grandes projetos corporativos que exigem escalabilidade, segurança e organização rigorosa.
Inclui:
- Estrutura baseada em domínios com diretórios para serviços, repositórios e autenticação
- Scripts e configurações para migrações de banco de dados e CI/CD robusto
- Dockerfile, compose.yaml e integração com pipelines de deploy
Ideal para: Aplicações empresariais complexas que precisam de alta performance e manutenção contínua.
6️⃣ Microservice Structure (create_microservice_structure) 🏗️
Projetada para arquiteturas de microsserviços, onde cada serviço é independente e escalável.
Inclui:
- Estrutura enxuta para cada microsserviço, com API Gateway e orquestração local via Docker Compose
- Exemplo de integração com serviços isolados e rotas simples
Ideal para: Sistemas distribuídos, onde a modularidade e independência de serviços são essenciais.
7️⃣ Scalable Structure (create_scalable_structure) 📈
Preparada para projetos que precisam crescer rapidamente e suportar alto volume de tráfego.
Inclui:
- Divisão clara em módulos, com workers para tarefas assíncronas e integração com cache (ex.: Redis)
- Arquivos para implantação em Kubernetes e monitoramento de performance
- Exemplo de rotas e estrutura preparada para escalabilidade
Ideal para: Projetos que demandam escalabilidade horizontal e vertical, com alta performance.
8️⃣ Modular Structure (create_modular_structure) 🔧
Uma arquitetura altamente modular, facilitando a reutilização de código e manutenção contínua.
Inclui:
- Diretórios organizados por módulos independentes com endpoints e configurações globais
- Exemplo de integração entre módulos e uma API principal que agrega as funcionalidades
- Suporte para testes e containerização via Docker
Ideal para: Equipes que desejam manter um código organizado, reutilizável e de fácil manutenção.
🚀 Como Usar
- Instale o FastAPI Starter (modo editável):
pip install -e .
📌 Criando um Novo Projeto:
Utilize o CLI para criar um novo projeto, especificando o template desejado:
fastapi-starter init meu_projeto --template <template>
🚀 Como Usar
- Exemplos:
aws
default
minimal
advanced
enterprise
microservice
scalable
modular
- Execute o servidor:
bash uvicorn src.server:app --reload
- Acesse a API em http://127.0.0.1:8000
🏗️ Deploy
- Docker: docker-compose up
- AWS Lambda: Utilize os scripts em scripts/ e Terraform
- Kubernetes: Aplique os manifestos em infra/k8s/
📢 Dúvidas? Abra uma issue no repositório! 🚀
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fastapi_starter_template-0.1.0.tar.gz.
File metadata
- Download URL: fastapi_starter_template-0.1.0.tar.gz
- Upload date:
- Size: 8.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.3 Darwin/21.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1d288f1cd8871191e0b3694d0aa6f740cb517cbfee161a00d0d83f80c3d78aae
|
|
| MD5 |
a3ff7f63b23f73b3020d2ae135be272c
|
|
| BLAKE2b-256 |
dde7ce00f1ff6b09d30a324d8b6e251d0beb93de77853820b66e157cbc5f8947
|
File details
Details for the file fastapi_starter_template-0.1.0-py3-none-any.whl.
File metadata
- Download URL: fastapi_starter_template-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.3 Darwin/21.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
12bc564ad3dc722d1611e9d2e5de7e11fd508f7816066181830fb520040485b9
|
|
| MD5 |
570648485735cb0cde8a83deb0a5e752
|
|
| BLAKE2b-256 |
926ef302684dac537c08bf7f8ac41ebdd5d966853fa7f6fac2d2a3be72361e25
|