Aplicação web para envio e gerenciamento de mensagens curtas, com backend em Django REST Framework e frontend em React com TypeScript.
- Envio e listagem de mensagens
- Ordenação por data de criação
- Exportação para Excel
- Interface responsiva
- API RESTful
-
Clone o repositório
git clone https://github.com/kelvin-quida/notedrop cd notedrop -
Inicie os containers
docker-compose up --build
-
Acesse
- Frontend: http://localhost:3000
- API: http://localhost:8000
- Admin: http://localhost:8000/admin
- Porta: 5432
- Banco: notedrop_db
- Usuário: notedrop_user
- Senha: notedrop_password
- Porta: 8000
- Health Check: Aguarda PostgreSQL estar pronto
- Volumes: Código fonte montado para desenvolvimento
- Porta: 3000
- Dependência: Aguarda API estar disponível
- Volumes: Código fonte montado para desenvolvimento
O projeto possui uma suíte completa de testes em 3 níveis:
- Testes Unitários - Models e Serializers (pytest)
- Testes de Integração - API endpoints (pytest)
- Testes E2E - Fluxo completo (Playwright)
# Pytest
docker-compose exec api pytest
# Padrão do Django
docker-compose exec api python manage.py testdocker-compose run --rm e2e- Meta: 90%+ de cobertura de código
- Relatório:
backend/htmlcov/index.html
Acesse a documentação interativa da API:
- Swagger: http://localhost:8000/
- ReDoc: http://localhost:8000/redoc/
- OpenAPI Schema: http://localhost:8000/api/schema/
docker-compose downdocker-compose down -v# Todos os serviços
docker-compose logs -f
# Apenas API
docker-compose logs -f api
# Apenas Frontend
docker-compose logs -f web# Criar migrações
docker-compose exec api python manage.py makemigrations
# Aplicar migrações
docker-compose exec api python manage.py migrate
# Criar superusuário
docker-compose exec api python manage.py createsuperuser
# Shell Django
docker-compose exec api python manage.py shell# Backend
docker-compose exec api bash
# Frontend
docker-compose exec web sh
# Banco de dados
docker-compose exec db psql -U notedrop_user -d notedrop_db- Django 4.2.7
- Django REST Framework 3.14.0
- PostgreSQL 15
- openpyxl 3.1.2
- React 19.2.0
- TypeScript 5.9.3
- Vite 7.1.11
- Tailwind CSS 4.1.15
- Docker e Docker Compose
- PostgreSQL
- Pytest e Playwright para testes