Skip to content

edson-github/fastapi-do-zero

 
 

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. Estruturando seu Projeto e Criando Rotas CRUD
  4. Configurando Banco de Dados e Gerenciando Migrações com Alembic
  5. Integrando Banco de Dados a API
  6. Autenticação e Autorização
  7. Refatorando a Estrutura do Projeto
  8. Tornando o sistema de autenticação robusto
  9. Criando Rotas CRUD para Tarefas
  10. Dockerizando a aplicação
  11. Automatizando os testes com integração contínua
  12. Fazendo o deploy no fly.io
  13. 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.7.1:

pipx install poetry==1.7.1

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

pyenv local 3.11.6

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.

About

Curso básico de FastAPI

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 95.2%
  • Mako 2.6%
  • CSS 1.5%
  • Other 0.7%