Universidade Federal do Amazonas | Curso de Desenvolvimento Web FullStack
Um sistema inteligente de recomendação de smartphones baseado em análise de sentimentos e perfil de uso.
| Nome | Função |
|---|---|
| Cleicy Priscilla Aragão dos Santos | FullStack Developer |
| Josival Salvador Monteiro Júnior | FullStack Developer |
| Messyas Gois França | FullStack Developer |
| Vanderson Cardoso Rodrigues | DevOps / Tester |
QualCel AI é uma plataforma que utiliza inteligência artificial para ajudar consumidores a escolherem o celular ideal. O sistema coleta e analisa avaliações reais de usuários de grandes e-commerces (Amazon, Magazine Luiza, etc.) para extrair sentimentos e identificar os pontos fortes e fracos de cada modelo da Motorola.
Através de um quiz interativo, o usuário informa suas prioridades (bateria, câmera, custo-benefício, desempenho) e recebe recomendações personalizadas, simplificando o complexo processo de decisão de compra de um smartphone.
O projeto permite rodar o backend de duas formas:
- Banco Remoto: conecta a um banco externo já existente. Necessário solicitar o DB URL (Prisma
DATABASE_URL) ao responsável do banco (a equipe do projeto). - Banco Local: usa MySQL dentro do
docker-compose.local.ymle aplica automaticamente as migrations (recomendado para desenvolvimento isolado).
OBS: Não rode migrations em banco remoto sem autorização.
migrate deployaltera o schema do banco.
Todas as execuções abaixo são no modo de desenvolvimento (dev).
docker-compose.local.yml→ compose para local (MySQL + phpMyAdmin) usandobackend/Dockerfile.local.docker-compose.yml→ compose para remoto, usandobackend/Dockerfilesem migrations automáticas.backend/Dockerfile→ antigo, não aplica migrations.backend/Dockerfile.local→ novo, aplicanpx prisma migrate deployantes de iniciar o backend..env.example→ exemplo de configuração do backend, contendo placeholders para Banco Local e Remoto.
- Configure o
.envdo backend:
DATABASE_URL="mysql://appuser:apppass@db:3306/appdb"Suba os containers:
# primeira execução ou após alteração de dependências
docker compose -f docker-compose.local.yml up --build
# execuções seguintes
docker compose -f docker-compose.local.yml upAcesse:
- Frontend: http://localhost:3000
- Backend: http://localhost:3001
- phpMyAdmin: http://localhost:8080 (usuário:
root, senha:rootpass)
- Solicite o DB URL (Prisma
DATABASE_URL) ao responsável do banco:
DATABASE_URL=- Suba o compose:
# primeira execução ou após alteração de dependências
docker compose -f docker-compose.yml up --build
# execuções seguintes
docker compose -f docker-compose.yml up- Local:
Dockerfile.localroda migrations automaticamente. - Remoto:
Dockerfilenão roda migrations automáticas. - Use
docker-compose.local.ymlpara local edocker-compose.ymlpara remoto. - Porta do MySQL local mapeada:
3307:3306— verifique conflitos no host.
| Ambiente | Passos essenciais |
|---|---|
| Local | 1. Configurar DATABASE_URL no .env 2. docker compose -f docker-compose.local.yml up --build 3. Acessar Frontend/Backend/phpMyAdmin |
| Remoto | 1. Solicitar DB URL 2. Configurar .env 3. docker compose up --build |
Para parar os containers em execução no terminal, pressione Ctrl + C.
Para parar e remover containers:
# Banco Local
docker compose -f docker-compose.local.yml down
# Banco Remoto
docker compose -f docker-compose.yml down