Aplicativo web local de estudos com questoes, pratica, simulados, dashboard e flashcards. Feito com Next.js, TypeScript, Tailwind, Prisma e SQLite.
- Node.js 20+
- npm 10+
- Instale dependencias:
npm install- Configure variaveis de ambiente:
cp .env.example .env- Gere o Prisma Client:
npx prisma generate- Aplique as migrations no SQLite local:
npx prisma migrate deploy- Opcional: popule dados de exemplo:
npm run seed- Suba a aplicacao:
npm run dev- Se o cache do Next ficar inconsistente, reinicie limpo:
npm run dev:clean- Opcional: abra Prisma Studio para inspecao do banco:
npx prisma studionpm run dev- inicia ambiente de desenvolvimentonpm run dev:clean- limpa.nexte inicia ambiente de desenvolvimentonpm run build- build de producaonpm run build:clean- limpa.nexte executa build de producaonpm run start- inicia build de producaonpm run lint- executa ESLintnpm run clean- remove o cache/artefatos gerados pelo Next em.nextnpm run seed- executa seed do Prismanpm test- executa testes unitarios
/dashboard- resumo, resets de contadores e analise por periodo/origem/questions- banco de questoes, busca, edicao e exclusao/questions/new- cadastro manual de questao/questions/:id/edit- edicao de questao/questions/import- importacao em lote e exclusao em massa de questoes/train- pratica individual por dominio ou todos os dominios/exams- gerir simulados, incluindo simulado prova Security+ e personalizado por dominio/exams/:id- responder simulado/exams/:id/review- revisar resultado, respostas e explicacoes/exams/history- historico de simulados realizados/flashcards- cadastro, listagem e exclusao de flashcards/flashcards/review- revisao espacada de flashcards
- Importacao de questoes em texto livre com alternativas A-E, resposta correta, explicacao, materia, tema, subtema, dificuldade, tags e fonte.
- Pratica por dominio, com feedback imediato e explicacao ao errar.
- Simulado prova seguindo a proporcao CompTIA Security+ por dominios.
- Simulado personalizado por dominio.
- Historico e revisao de simulados concluidos.
- Dashboard com filtros de 7, 15, 30 dias ou desde sempre, combinado com origem
Tudo,SimuladosouPraticar. - Estatisticas por dominio e subtema.
- Contadores resetaveis sem apagar historico real de tentativas.
- Flashcards com revisao espacada simples.
Use estes comandos antes de considerar uma alteracao pronta:
npm run lint
npm test
npm run buildSe aparecer erro como Cannot find module './948.js' vindo de .next/server/webpack-runtime.js, normalmente o cache de desenvolvimento do Next ficou inconsistente. Pare o servidor, rode npm run dev:clean e abra a aplicacao novamente.
Evite apagar a pasta .next enquanto npm run dev estiver em execucao, porque o servidor pode continuar apontando para chunks antigos que ja foram removidos.
Use TESTING.md para validar persistencia de dados, importacoes e fluxos de treino, simulado e flashcards.