Esse é o repositório do material sobre FastAPI disponível em: fastapidozero.dunossauro.com.
O objetivo final desse curso é que ele também seja disponibilizado em vídeo quando a escrita do material terminar. Nos vemos no youtube em breve!
O objetivo desse projeto é ensinar FastAPI para pessoas que queiram ter o seu primeiro contato com o mesmo. A ideia padrão é construir uma aplicação pequena e simples, mas executando todos os passos até o deploy.
As Aulas estão dividas em:
- Apresentação do curso
- Configurando o Ambiente de Desenvolvimento
- Introdução ao desenvolvimento WEB
- Estruturando seu Projeto e Criando Rotas CRUD
- Configurando Banco de Dados e Gerenciando Migrações com Alembic
- Integrando Banco de Dados a API
- Autenticação e Autorização
- Refatorando a Estrutura do Projeto
- Tornando o sistema de autenticação robusto
- Criando Rotas CRUD para Tarefas
- Dockerizando a aplicação
- Automatizando os testes com integração contínua
- Fazendo o deploy no fly.io
- Despedida
Todo esse projeto é gerenciado pelo Poetry, a versão usada durante o momento da escrita é 1.8.3
:
pipx install poetry==1.8.3
A versão usada do python é a versão 3.12.2:
pyenv local 3.12.2
para configurar todo o ambiente basta executar:
poetry install
Os comandos para executar funções como deploy, servidor local, geração de slides, etc. Estão todas sendo feitas pelo taskipy
:
task --list
serve Executa o servidor local do mkdocs
deploy Faz o deploy da página em produção
slides Gera os slides em pdf
slides_html Gera os slides em html (formato usado nas aulas)
pdf Cria um pdf único de todo o curso (não otimizado ainda)
Para executar qualquer comando, basta usar: task <comando>
Todos os slides foram feitos usando marp. Versão do marp usada: 3.2.1
. O tema rose-pine
está dentro da pasta dos slides brutos.