Este projeto é uma API RESTful para gerenciamento de usuários e tarefas, desenvolvida com FastAPI. O projeto foi construído seguindo o curso FastAPI do Zero, criado e disponibilizado por Eduardo Mendes (@dunossauro).
Como executar o projeto localmente.
- Python 3.11+
- Poetry para gerenciamento de dependências.
- Docker e Docker Compose (para execução em contêiner).
- Clone o repositório
git clone [https://github.com/seu-usuario/fastapi-do-zero](https://github.com/seu-usuario/fastapi-do-zero) # Substitua pelo link do seu repositório - Na raiz do diretório, crie um arquivo
.envcom as seguintes variáveis de ambiente:DATABASE_URL=postgresql+asyncpg://app_user:app_password@localhost:5432/app_db SECRET_KEY=sua-chave-secreta-aqui ALGORITHM=HS256 ACCESS_TOKEN_EXPIRE_MINUTES=30
- Instale as dependências do projeto com Poetry
poetry install
- Execute as migrações do banco de dados com Alembic
poetry run alembic upgrade head
- Para subir a aplicação (por padrão, ela se encontrará na porta 8000)
poetry run uvicorn fast_zero.app:app --reload
Se preferir, você pode executar toda a aplicação (API e banco de dados) usando Docker.
- Clone o repositório e crie o arquivo
.envcomo nos passos 1 e 2 acima. - Suba os contêineres com Docker Compose:
docker-compose up -d
- A documentação interativa da API (gerada pelo Swagger UI) estará disponível em
http://localhost:8000/docs. - A documentação alternativa (ReDoc) estará disponível em
http://localhost:8000/redoc.