O OpinApp é uma plataforma SaaS brasileira para coleta e análise inteligente de feedbacks de clientes. O sistema centraliza comentários recebidos através de múltiplos canais e tem como objetivo utilizar Inteligência Artificial para processar, analisar e gerar insights automáticos.
Empresas coletam feedbacks de forma desorganizada. O OpinApp resolve isso centralizando tudo em um único lugar, permitindo:
- Coleta Centralizada: De múltiplos canais (Links, QR Code).
- Sistema OpinStars: Avaliação híbrida (0-5 estrelas + texto).
- Dashboard: Métricas visuais e gerenciamento de formulários.
- Análise de Sentimento: Processada por IA (Google Gemini), gerando classificação, resumo e detecção de temas.
O projeto opera no modelo Full Stack com uma arquitetura moderna e escalável.
- Node.js: Ambiente de execução.
- Express: Framework web.
- Prisma ORM: Gerenciamento de banco de dados e migrations.
- Banco de Dados: PostgreSQL (Schemas de Users, Forms, Feedbacks, PasswordReset).
- Autenticação: JWT (JSON Web Tokens) e Argon2 para hash de senhas.
- Segurança: Helmet, Rate Limiting, CORS configurado.
- Framework: Next.js 14 (App Router).
- Estilização: Tailwind CSS 4.
- Gerenciamento de Estado: Zustand (Auth, Forms, Feedbacks).
- UI: Responsiva e dinâmica, preparada para PWA.
opinapp/
├── frontend/ # Aplicação Next.js
│ ├── src/app/ # Páginas e Rotas (Dashboard, Login, Forms)
│ ├── src/services/ # Integração com API (Axios)
│ └── src/store/ # Gerenciamento de Estado Global
│
├── backend/ # API Node.js/Express
│ ├── src/controllers/ # (Lógica consolidada em rotas no MVP)
│ ├── src/middlewares/ # Auth, RateLimit
│ ├── src/routes/ # Definição de endpoints
│ └── prisma/ # Schema do Banco de Dados
- Node.js 18+
- Banco de dados PostgreSQL (ou SQLite para testes rápidos, configurável no
.env)
-
Clone o repositório:
git clone https://github.com/hpachecjose/opinapp.git cd opinapp -
Instale as dependências (Raiz, Frontend e Backend):
npm install # Instala dependências da raiz (concurrently) npm run install:all # Script customizado para instalar tudo
Caso o script
install:allnão esteja disponível, executenpm installem cada pasta manualmente. -
Configure as variáveis de ambiente:
- Crie um arquivo
.envna pastabackend/com aDATABASE_URL,JWT_SECRETeGEMINI_API_KEY. - Crie um arquivo
.env.localna pastafrontend/se necessário (ex:NEXT_PUBLIC_API_URL).
- Crie um arquivo
-
Configure o Banco de Dados (Prisma):
cd backend npx prisma generate npx prisma db push # Cria as tabelas sem migrations (dev)
Na raiz do projeto, execute:
npm run devEste comando utilizará o concurrently para subir simultaneamente:
- Frontend: http://localhost:3000
- Backend: http://localhost:4000 (ou porta definida no .env)
O projeto encontra-se funcional com as seguintes features implementadas:
- Landing Page, Páginas Institucionais e Legais.
- Sistema de Autenticação Completo (Login, Registro, Recuperação de Senha).
- Dashboard Interativo (Gráficos de distribuição, Lista de Feedbacks).
- Criação e Gestão de Formulários.
- Coleta de Feedbacks (Links Públicos).
- Análise de Sentimento com IA (Google Gemini).
- Moderação automática de conteúdo.
Próximos Passos (Roadmap):
- Exportação de relatórios (PDF/Excel).
- Refinamento da Moderação de Conteúdo.
Proprietário: OpinApp Team. Todos os direitos reservados.