Modulo6 Plataforma
No description available
Install / Use
/learn @tai-pucrs/Modulo6 PlataformaREADME
📚 Módulo 6 - Gestão de Projetos e Equipes de Dados
Plataforma educacional para pós-graduação em Gestão Estratégica de Dados.
🎯 Visão Geral
Este projeto transforma o conteúdo educacional do Módulo 6 (24 arquivos markdown, ~500KB) em uma aplicação web interativa com:
- 60 vídeos organizados em 5 submódulos
- 8 simuladores IA para prática de soft skills
- 6 cases PBL com empresas reais (Nubank, iFood, etc.)
- 75 termos no glossário técnico
- 12 templates e 10 checklists editáveis
📁 Estrutura do Projeto
modulo6-app/
├── data/ # Dados migrados (JSON)
│ ├── videos.json
│ ├── cases.json
│ ├── simuladores.json # ✅ Exemplo incluso
│ ├── glossario.json
│ ├── templates.json
│ └── checklists.json
│
├── docs/ # Documentação
│ └── arquitetura-simuladores-ia.md # ✅ Arquitetura Claude API
│
├── scripts/
│ └── migration/
│ └── migrate.ts # ✅ Script de migração MD → JSON
│
├── src/
│ ├── api/
│ │ └── simulador.routes.ts # ✅ Rotas REST
│ ├── services/
│ │ └── simulador.service.ts # ✅ Integração Claude API
│ ├── types/
│ │ └── modulo.types.ts # ✅ Tipos TypeScript
│ └── index.ts # ✅ Servidor Express
│
├── .env.example # ✅ Variáveis de ambiente
├── package.json # ✅ Dependências
└── tsconfig.json # ✅ Configuração TS
🚀 Quick Start
1. Instalar dependências
npm install
2. Configurar variáveis de ambiente
cp .env.example .env
# Editar .env com sua ANTHROPIC_API_KEY
3. Migrar conteúdo markdown (opcional)
# Coloque seus arquivos .md em ./markdown/
npm run migrate -- --input ./markdown --output ./data
4. Iniciar servidor
# Desenvolvimento (hot reload)
npm run dev
# Produção
npm run build
npm start
🔌 API Endpoints
Simuladores IA
| Método | Endpoint | Descrição |
|--------|----------|-----------|
| GET | /api/v1/simulador/simuladores | Listar simuladores disponíveis |
| POST | /api/v1/simulador/sessao/iniciar | Iniciar nova sessão |
| POST | /api/v1/simulador/sessao/mensagem | Enviar mensagem |
| POST | /api/v1/simulador/sessao/mensagem/stream | Enviar com streaming (SSE) |
| POST | /api/v1/simulador/sessao/avaliar | Avaliar sessão finalizada |
| GET | /api/v1/simulador/sessao/:id | Obter dados da sessão |
| GET | /api/v1/simulador/sessoes | Listar sessões do usuário |
Exemplo de uso
# Iniciar sessão
curl -X POST http://localhost:3001/api/v1/simulador/sessao/iniciar \
-H "Authorization: Bearer token123" \
-H "Content-Type: application/json" \
-d '{"simuladorId": "simulador-1"}'
# Enviar mensagem
curl -X POST http://localhost:3001/api/v1/simulador/sessao/mensagem \
-H "Authorization: Bearer token123" \
-H "Content-Type: application/json" \
-d '{
"sessaoId": "sess_xxx",
"conteudo": "Ricardo, gostaria de conversar sobre seu desenvolvimento recente."
}'
🤖 Simuladores Disponíveis
| # | Simulador | Categoria | Submódulo | |---|-----------|-----------|-----------| | 1 | Feedback Difícil | feedback | 6.4 | | 2 | Negociação de Recursos | negociacao | 6.3, 6.4 | | 3 | Gestão de Conflitos | conflito | 6.4 | | 4 | Alinhamento Stakeholder | stakeholder | 6.3 | | 5 | Mentoria de Junior | mentoria | 6.4 | | 6 | Entrevista de Contratação | entrevista | 6.1 | | 7 | Apresentação Executiva | apresentacao | 6.3, 6.5 | | 8 | Comunicação de Crise | crise | 6.4, 6.5 |
📊 Script de Migração
O script migrate.ts converte os arquivos markdown do módulo para JSON estruturado:
# Migrar todos os arquivos
npm run migrate
# Com opções
npm run migrate -- --input ./meus-arquivos --output ./meus-dados --quiet
Arquivos suportados
| Arquivo | Parser |
|---------|--------|
| modulo6_estrutura_videos.md | parseVideosStructure() |
| modulo6_storyboards.md | parseStoryboards() |
| modulo6_pbl_cases.md | parseCases() |
| modulo6_simuladores_ia.md | parseSimuladores() |
| modulo6_glossario.md | parseGlossario() |
| modulo6_templates_editaveis.md | parseTemplates() |
| modulo6_checklists.md | parseChecklists() |
🔐 Segurança
- Rate Limiting: 20 req/min por usuário
- Validação: Mensagens limitadas a 2000 caracteres
- Autenticação: JWT Bearer token (simplificado para dev)
- API Key: Nunca exposta no frontend
💰 Estimativa de Custos (Claude API)
| Métrica | Valor | |---------|-------| | Tokens por sessão | ~12.000 | | Sessões por aluno | 8 | | Total por aluno | ~96.000 tokens | | Custo por turma (100 alunos) | ~$80-120 |
🛠️ Tecnologias
- Runtime: Node.js 20+
- Framework: Express.js
- Linguagem: TypeScript
- IA: Anthropic Claude API (Sonnet)
- Validação: Zod
📈 Próximos Passos
Fase 1 - MVP (atual)
- [x] Script de migração
- [x] Serviço de simuladores
- [x] API REST
- [x] Documentação
Fase 2 - Frontend
- [ ] React + Vite + Tailwind
- [ ] Chat UI para simuladores
- [ ] Dashboard de progresso
- [ ] Player de vídeos
Fase 3 - Persistência
- [ ] PostgreSQL + Prisma
- [ ] Autenticação JWT completa
- [ ] Cache Redis
Fase 4 - Deploy
- [ ] Docker
- [ ] CI/CD (GitHub Actions)
- [ ] Deploy (Vercel + Railway)
📝 Licença
MIT
Autor: Tainá Oliveira
Projeto: Pós-Graduação em Gestão Estratégica de Dados
Módulo: 6 - Gestão de Projetos e Equipes de Dados
