O EduPlay nasceu de uma necessidade real: tornar o aprendizado do Ensino Fundamental mais engajante e eficiente para crianças de 11 a 13 anos, respeitando o currículo da Secretaria Municipal de Educação de São Paulo.
A plataforma transforma o estudo em uma experiência de investigação — a criança é um Agente Pesquisador do Instituto do Saber, que resolve mistérios e desbloqueia conhecimento através de missões, podcasts e jogos interativos.
- 🏛️ 5 Departamentos — História, Geografia, Matemática, Ciências e Português
- 🎯 Sistema de Missões — baseado no currículo paulista do 6º ao 9º ano
- 🤖 IA Gerando Conteúdo — Claude API via Firebase Cloud Functions
- 🎙️ Podcast com Legenda Sincronizada — narração palavra por palavra
- ❓ Quiz Interativo — perguntas com feedback pedagógico imediato
- 🔐 Forca — decodificar mensagens secretas
- 🧩 Sistema de Fragmentos — moeda de conhecimento exclusiva
- 🏆 Recompensa Surpresa — pais configuram meta e recompensa secreta
- ⏱️ Timer de Estudo — controle de tempo com bloqueio parental
- 🔒 Painel dos Responsáveis — senha master, timer e metas
- 🌙 Dark Mode / Light Mode — tema claro e escuro em todas as telas
- 📱 PWA — instalável no celular como app nativo
- ♿ Responsivo — celular, tablet e desktop
O EduPlay foi desenvolvido com base em princípios da psicologia do desenvolvimento para a faixa etária de 11-13 anos:
- Teoria de Erikson — identidade em construção: a criança é o protagonista
- Efeito Zeigarnik — tarefas incompletas geram motivação para continuar
- Zona de Desenvolvimento Proximal (Vygotsky) — desafiador mas alcançável
- Reforço Positivo Contingente — recompensas reais configuradas pelos pais
- Curiosidade Epistêmica — cada missão termina com um gancho narrativo
- Autonomia Controlada — a criança escolhe qual missão investigar
- Feedback Imediato — cada acerto avança a narrativa
O EduPlay foi desenvolvido em conformidade com o Estatuto da Criança e do Adolescente Digital e a LGPD para plataformas que atendem menores de idade.
| Requisito Legal | Implementação |
|---|---|
| Consentimento parental | Responsável aceita termos antes de criar perfil da criança |
| Coleta mínima de dados | Apenas nome (primeiro nome), avatar e série escolar |
| Sem dados sensíveis | Nenhum dado biométrico, localização ou financeiro coletado |
| Log de consentimento | Registro imutável com hash do email e IP (SHA-256) |
| Direito ao esquecimento | Pai pode excluir todos os dados da criança |
| Transparência | Política de privacidade clara e acessível |
| Senha hasheada | Senha master dos pais nunca armazenada em texto puro |
| Isolamento de dados | Coleções eduplay_* separadas do marketplace OLLO |
1. Responsável cria conta com email + senha
2. Aceita Termos de Uso + Política de Privacidade
3. Aceita especificamente os termos ECA Digital
4. Log de consentimento registrado com timestamp, emailHash e ipHash
5. Responsável configura perfil do filho (dados mínimos)
6. Filho utiliza a plataforma sob supervisão parental
| Dado | Finalidade | Base Legal |
|---|---|---|
| Primeiro nome | Personalização da experiência | Consentimento parental |
| Avatar (emoji) | Identidade visual | Consentimento parental |
| Série escolar | Adequar conteúdo pedagógico | Consentimento parental |
| Progresso e acertos | Relatório para os pais | Consentimento parental |
Não coletamos: sobrenome, data de nascimento, escola, localização, foto, dados de contato da criança.
| Tecnologia | Versão | Uso |
|---|---|---|
| React | 18 | Interface e componentes |
| Vite | 5 | Build tool e dev server |
| React Router | 6 | Navegação SPA |
| Firebase Hosting | — | Deploy e CDN |
| Firestore | — | Banco de dados |
| Firebase Auth | — | Autenticação dos responsáveis |
| Firebase Functions | 2nd Gen | IA gerando conteúdo (servidor) |
| Firebase Secret Manager | — | API keys seguras |
| Claude API (Haiku) | — | Geração de conteúdo pedagógico |
| vite-plugin-pwa | 1.2 | Service Worker e manifest |
| Web Speech API | — | Narração com legenda |
| Workbox | — | Cache offline |
# Clone o repositório
git clone https://github.com/Thiago-spba/eduplay.git
cd eduplay
# Instale as dependências
npm install
# Configure as variáveis de ambiente
cp .env.example .env
# Preencha o .env com suas chaves Firebase
# Rode em desenvolvimento
npm run dev
# Build para produção
npm run build
# Preview do build (com PWA)
npm run previewVITE_FIREBASE_API_KEY=
VITE_FIREBASE_AUTH_DOMAIN=
VITE_FIREBASE_PROJECT_ID=
VITE_FIREBASE_STORAGE_BUCKET=
VITE_FIREBASE_MESSAGING_SENDER_ID=
VITE_FIREBASE_APP_ID=
VITE_PARENT_PASSWORD=A
ANTHROPIC_API_KEYé configurada no Firebase Secret Manager — nunca no.envdo frontend.
src/
├── components/
│ ├── AudioLesson.jsx # Podcast com legenda sincronizada
│ ├── BottomNav.jsx # Navegação inferior responsiva
│ ├── Header.jsx # Header reutilizável
│ └── LockScreen.jsx # Tela de bloqueio parental
├── context/
│ └── ThemeContext.jsx # Dark/Light mode global
├── hooks/
│ ├── useParentLock.js # Senha e bloqueio parental
│ ├── usePlayer.js # Nome e avatar do jogador
│ ├── useProgress.js # Fragmentos e progresso
│ └── useTimer.js # Timer de estudo
├── pages/
│ ├── HomePage.jsx # Tela principal — Instituto
│ ├── RegisterPage.jsx # Registro nome e avatar
│ └── SubjectPage.jsx # Página de disciplina + jogos
├── services/
│ └── firebase.js # Configuração Firebase
└── utils/
└── content.js # Conteúdo pedagógico estático
functions/
└── index.js # Cloud Function — geração de conteúdo com IA
Baseado no Currículo Municipal de São Paulo e Currículo Paulista / BNCC para o Ensino Fundamental II (6º ao 9º ano), organizado por bimestre:
| Disciplina | 6º ano | 7º ano | 8º ano | 9º ano |
|---|---|---|---|---|
| História | Pré-História → Roma Antiga | Idade Média → Colonização | Iluminismo → República Velha | 1ª Guerra → Brasil atual |
| Geografia | Localização → População BR | América → África | Ásia → Geopolítica | Urbanização → Brasil global |
| Matemática | Números → Geometria | Álgebra → Volume | Equações → Pitágoras | Funções → Probabilidade |
| Ciências | Universo → Ecossistemas | Evolução → Animais | Reprodução → Eletricidade | Química → Radioatividade |
| Português | Interpretação → Verbos | Argumentação → Ortografia | Variedades → Literatura | Redação → Revisão geral |
- MVP — missões, quiz, forca, podcast
- PWA instalável
- Deploy em produção
- Dark/Light mode completo
- Cloud Function com IA (Claude API)
- Conformidade ECA Digital
- Firestore rules seguras
- Autenticação dos responsáveis
- Painel dos Responsáveis completo
- Perfil do Agente — Dossiê
- Sistema de assinatura (freemium)
- App nativo (React Native) — bloqueio real do celular
Thiago Fernando Engenharia de Computação — Centro Universitário Celso Lisboa
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.
Em conformidade com ECA Digital (Lei 14.155/2021) e LGPD