Sobre | Funcionalidades | Tecnologias | Pré requisitos | Começando | Licença | Autor
O projeto a seguir implementa uma API em Python com uso de FastAPI e MongoDB como banco de dados.
✔️ API de consultar CEP, onde dado um CEP retornará os dados de endereço a partir de uma API pública;
✔️ CRUD de uma entidade Pessoa integrada a API de CEP;
✔️ Persistência dos dados em MongoDB;
✔️ Documentação automática em SwaggerUI seguindo os padrões do FastAPI;
✔️ Containerização para fast deploy.
Os seguintes módulos e ferramentas foram usados na construção do projeto:
Antes de começar 🏁, você precisa ter o Git, Python 3.7 ou superior instalados em sua maquina ou em uma virtual env e um MongoDB local instalado ou em docker, nesse projeto você só precisará executar o comando docker-compose up
na raiz do projeto.
# Clone este repositório
$ git clone https://github.com/joismar/python-fastapi-mongodb-api
# Entre na pasta
$ cd python-fastapi-mongodb-api
# Crie a pasta do mongodb para usar com docker (somente se não tiver instalado localmente)
$ mkdir mongodb/database
Descomente as linhas correspondentes a API no arquivo docker-compose.yml
# Execute o comando abaixo e... Pronto!
$ docker-compose up -d
# O app vai inicializar em <http://localhost:8080>
# Subir mongodb no docker
$ docker-compose up -d
# Instale as dependências (com poetry)
$ poetry install
# Ou use o requirements.txt para usar o seu gerenciador de dependencias preferido
# Para iniciar o projeto
$ poetry shell
$ > uvicorn app.main:app --host 0.0.0.0 --port 8080 --reload
# Caso não esteja usando o poetry, execute o comando acima na raiz do projeto
# remova o "--reload" para produção
# O app vai inicializar em <http://localhost:8080>
Abra http://localhost:8080/docs em seu navegador e realize os testes 😁/
Este projeto está sob licença MIT. Veja o arquivo LICENSE para mais detalhes.
Feito com ❤️ por Joismar Braga