Backend da Base dos Dados, a maior plataforma pública de dados do Brasil.
- Django como framework web.
- PostgreSQL como banco de dados relacional.
- huey + Redis para agendamento de tarefas.
- Elasticsearch como motor de busca.
- GraphQL (via Graphene-Django) para a API de dados.
- Google Cloud Storage para armazenamento de mídia e acesso aos dados brutos.
- Google BigQuery para acesso aos dados tratados.
- Django REST Framework para a API do chatbot.
- LangChain / LangGraph para desenvolvimento de agentes de IA.
- Google BigQuery para acesso aos dados tratados.
- Vertex AI para acesso a LLMs.
- Poetry para gerenciamento de dependências.
- Docker para conteinerização.
- Pre-commit para gerenciamento de hooks de pre-commit.
- Ruff para formatação.
Para começar a desenvolver, configure o ambiente de desenvolvimento seguindo as instruções abaixo:
1. Clone o repositório e abra-o no seu editor de texto.
git clone https://github.com/basedosdados/backend.git2. Crie um ambiente virtual de desenvolvimento com o Poetry.
poetry install3. Instale os hooks de pre-commit.
pre-commit install
4. Copie o arquivo .env.example e ajuste as variáveis conforme necessário.
cp .env.example .envNote
As variáveis de ambiente no arquivo .env.example já estão configuradas para execução com o Docker.
Caso vá utilizar a funcionalidade do chatbot, a conta de serviço deve ser armazenada localmente em ~/.basedosdados/credentials.
Utilize o Docker para executar o backend localmente:
docker compose upTip
Você também pode utilizar a flag -d --detach e acompanhar os logs utilizando o comando docker logs com a flag -f --follow:
docker compose up -d
docker compose logs api -fPara parar o serviço:
docker compose down