Repositório com o código que está sendo feito para o Curso de FastAPI.
Este projeto usa a versão 3.12.*
do Python. Você pode instalar a versão correta com o pyenv:
pyenv install 3.12.3
pyenv local 3.12.3
O projeto usa o Poetry para gerenciar as dependências. Para instalar as dependências, execute:
poetry install
Para rodar os comando do projeto, você precisa ativar o ambiente virtual do Poetry com o comando:
poetry shell
Os comandos para executar funções do projeto são feitos com o taskipy:
task --list # Lista os comandos disponíveis
task migrate_generate # Gera arquivos de migração do banco de dados
task migrate_upgrade # Executa as migrações do banco de dados
task migrate <message> # Gera e executa uma migração do banco de dados
task dev # Roda o servidor de desenvolvimento
task test # Roda os testes
task lint # Roda o linter
task lint --fix # Roda o linter e tenta corrigir os problemas
task format # Formata o código
Crie um arquivo .env
na raiz do projeto.
Você pode copiar o conteúdo do arquivo .env.example
e ajustar as variáveis de ambiente:
DATABASE_URL="postgresql+psycopg://app_user:app_password@localhost:5432/app_db"
SECRET_KEY="super-secret-key"
ALGORITHM="HS256"
ACCESS_TOKEN_EXPIRE_MINUTES=30
docker compose up fastzero_database -d # Inicia o banco de dados
task migrate_upgrade # Executa as migrações do banco de dados
task dev # Roda o servidor de desenvolvimento