Skip to content

dunossauro/fastapi-do-zero

Folders and files

NameName
Last commit message
Last commit date

Latest commit

34507a7 · Feb 23, 2025
Oct 15, 2024
Feb 22, 2025
Feb 23, 2025
Feb 19, 2025
Jun 9, 2024
Jul 28, 2024
Feb 10, 2025
Oct 16, 2024
Jul 27, 2023
May 9, 2024
Feb 2, 2025
Feb 9, 2025
Feb 11, 2025
Feb 22, 2025
Oct 24, 2023
Feb 22, 2025
Feb 22, 2025
Feb 11, 2025

Repository files navigation

FastAPI do Zero

O site gerado por esse repositório está 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:

  1. Apresentação do curso
  2. Configurando o Ambiente de Desenvolvimento
  3. Introdução ao desenvolvimento WEB
  4. Estruturando seu Projeto e Criando Rotas CRUD
  5. Configurando Banco de Dados e Gerenciando Migrações com Alembic
  6. Integrando Banco de Dados a API
  7. Autenticação e Autorização
  8. Refatorando a Estrutura do Projeto
  9. Tornando o projeto assíncrono
  10. Tornando o sistema de autenticação robusto
  11. Criando Rotas CRUD para Tarefas
  12. Dockerizando a aplicação
  13. Automatizando os testes com integração contínua
  14. Fazendo o deploy no fly.io
  15. Despedida

Caso precise reconstruir o ambiente para as páginas

Sobre o ambiente

Todo esse projeto é gerenciado pelo Poetry, a versão usada durante o momento da escrita é 2.0:

pipx install poetry==2.0.1
pipx inject poetry poetry-plugin-shell

A versão usada do python é a versão 3.13.0:

pyenv local 3.13.0

para configurar todo o ambiente basta executar:

poetry install

para ativar o ambiente virtual:

poetry shell

Sobre os comandos

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>, como por exemplo task serve.

Sobre os slides

Todos os slides foram feitos usando marp. Versão do marp usada: 4.0.3. O tema rose-pine está dentro da pasta dos slides brutos.