Skip to content

Schema do Servidor

Leandro Dias edited this page Sep 10, 2025 · 1 revision
  fastapi_news_service/
    │
    ├── app/
    │   ├── __init__.py           # Marca 'app' como um pacote Python
    │   ├── main.py               # Ponto de entrada principal da aplicação FastAPI e inclusão dos routers
    │   ├── schemas.py            # Definições dos modelos Pydantic para todas as entidades (User, News, Library, Subscription)
    │   │
    │   ├── services/
    │   │   ├── __init__.py       # Marca 'services' como um pacote Python
    │   │   ├── database.py       # Lógica de conexão e gerenciamento de sessão com o banco de dados (SQLAlchemy/SQLModel)
    │   │   ├── auth.py           # Lógica de negócio para autenticação (hashing de senhas, geração/validação de JWT)
    │   │
    │   └── routers/
    │       ├── __init__.py       # Marca 'routers' como um pacote Python
    │       ├── news.py           # Definição dos endpoints da API para o módulo de Notícias (/news)
    │       ├── libraries.py      # Definição dos endpoints da API para o módulo de Libraries (/libraries)
    │       └── authentication.py # Definição dos endpoints da API para o módulo de Autenticação (/auth)
    │
    ├── test/                     # Diretório para testes unitários
    │   └── __init__.py
    │   └── test_auth.py
    │   └── test_news.py
    │   └── test_libraries.py
    │
    ├── .env                      # Arquivo para variáveis de ambiente (ex: credenciais do banco de dados, chave secreta JWT)
    ├── .gitignore                # Regras para ignorar arquivos e diretórios no controle de versão (Git)
    ├── requirements.txt          # Lista das dependências Python do projeto
    ├── Dockerfile                # Definição para construir a imagem Docker da aplicação
    ├── docker-compose.yaml       # Configuração para orquestrar serviços Docker (API, banco de dados)
    ├── Makefile                  # Utilitário para automação de tarefas (build, deploy, etc., incluindo scripts para Kubernetes)
    ├── pyproject.toml            # Configuração de projeto Python (Poetry)
    ├── README.md                 # Este arquivo: Visão geral do projeto, instruções de configuração e uso
    └── .vscode/                  # Configurações específicas para o ambiente de desenvolvimento VS Code
       ├── settings.json          # Configurações de formatação, linting, etc.
       └── launch.json            # Configurações para depuração da aplicação
Clone this wiki locally