Skip to content

dunossauro/fastapi-do-zero

Folders and files

NameName
Last commit message
Last commit date
Jun 3, 2024
Sep 6, 2024
Sep 6, 2024
Jun 9, 2024
Jul 28, 2024
Jul 30, 2024
Jun 12, 2024
Jul 27, 2023
May 9, 2024
May 16, 2024
Jul 28, 2024
Oct 24, 2023
Sep 6, 2024
Sep 6, 2024
Aug 26, 2024

Repository files navigation

FastAPI do Zero

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:

  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 sistema de autenticação robusto
  10. Criando Rotas CRUD para Tarefas
  11. Dockerizando a aplicação
  12. Automatizando os testes com integração contínua
  13. Fazendo o deploy no fly.io
  14. 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 é 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

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>

Sobre os slides

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.