Back-end Django para integração de canais (Telegram, Mock) com chatbots e atendentes humanos.
Para mais informações, leia as documentações que se encontram na pasta docs.
- Requisitos
- Configuração do ambiente
-
- Clonar e instalar dependências (Poetry)
-
- Variáveis de ambiente (.env)
-
- Ativar a venv
-
- Subir serviços de apoio (Docker Compose)
-
- Migrar banco de dados
-
- Como rodar
- Servidor Django
- Celery Worker e Beat
- Testes
- Pre-commit
- Comandos Make
- Endpoints úteis
- Dicas de desenvolvimento
- Python 3.11
- Poetry (2.1.x)
- Docker e Docker Compose (para Postgres/Redis locais)
# Clonar
git clone git@github.com:marcellhenrique/chat-project.git
cd marcell-chat-project
# Instalar dependências
poetry installCrie um arquivo .env na raiz com o conteúdo do arquivo .env.example
No terminal digite:
poetry env activateO projeto inclui docker-compose.yml com Postgres e Redis. Para subir:
make dc_up # ou: docker-compose up -dPara parar:
make dc_down # ou: docker-compose downmake migrations
make migratemake run # poetry run python src/manage.py runserver
# Acesse: http://127.0.0.1:8000/make worker
make beatmake testmake pre_commit- make run: inicia o servidor Django (dev)
- make test: executa a suíte de testes
- make pre_commit: roda hooks de qualidade de código
- make migrations: cria migrações
- make migrate: aplica migrações
- make worker: inicia Celery worker
- make beat: inicia Celery beat
- make dc_up: sobe Postgres/Redis
- make dc_down: derruba Postgres/Redis
- make shell: shell do Django
- Admin: /admin/
- JWT (se habilitado na sua instalação):
- Obter token: /api/token/
- Refresh: /api/token/refresh/
- Schema (OpenAPI):
- YAML: /api/schema/
- Swagger UI: /api/schema/swagger-ui/
- Redoc: /api/schema/redoc/
- Mensageria: endpoints de webhook e envio ficam em channels/urls.py.
- Mensagens/FAQs: viewsets somente leitura e CRUD em messaging/views.py.
- Cache: as listagens usam cache "lazy" com invalidação por versão de prefixo.
- Ambiente: config/settings.py lê variáveis do .env via python-dotenv.