Voltar ao trabalho

GrowKind World · Plataforma editorial e de cursos · 2026

Publicar um método educativo como produto digital pago, em dois idiomas.

Plataforma educativa e editorial dedicada à infância neurodivergente: livro digital com paywall, cursos por módulo, loja e conteúdo completo em dois idiomas.

  • Produto
  • Conteúdo pago
  • Multilingue
Cliente
GrowKind World
Estado
Em produção, Stripe em modo live.
30
capítulos no leitor com paywall
433+
chaves de tradução PT/EN
Leitor do livro GrowKind

Leitor do livro — navegação por capítulos com paywall a partir de um ponto definido.

Contexto

Um autor e educador queria publicar o seu método (RDF) e um livro de 30 capítulos como produto digital, com cursos separados para famílias e para profissionais, em português e inglês desde o primeiro dia.

O problema

Conteúdo pago tem de ficar realmente protegido — os PDFs dos cursos não podem estar num URL público — e ao mesmo tempo o leitor tem de ser agradável de usar num telemóvel à noite.

i18n "a sério" significa duas cópias editoriais completas, não etiquetas traduzidas.

O meu papel

Único developer: arquitetura, leitor, paywall, integração Stripe, entrega protegida de conteúdo, i18n e SEO.

Restrições

  • Conteúdo pago realmente protegido: nenhum PDF acessível por URL público.
  • Duas cópias editoriais completas, não etiquetas traduzidas.
  • Leitor agradável num telemóvel, à noite, para pais cansados.

Solução

Next.js com rotas por locale (next-intl, 433+ chaves), leitor de livro com navegação por capítulos e paywall, módulos de curso servidos por rota protegida e consciente do idioma, checkout Stripe e whitelist de administradores.

O que foi construído

  • BookReader com 30 capítulos, vista de leitura e ChapterNav.
  • Ficheiros de curso fora de /public, servidos por /api/curso/[curso]/[modulo] após verificação de compra.
  • Página do método RDF com diagrama SVG animado.
  • SEO nativo do Next.js: metadata por idioma, JSON-LD, sitemap e robots.
  • Loja com Printful (print on demand) e Stripe; captura de email com Brevo.

Decisões-chave

Conteúdo privado fora do bundle

Os módulos vivem numa pasta private/ lida apenas pelo servidor. O URL nunca aponta para o ficheiro; aponta para uma rota que verifica a sessão e a compra antes de responder.

Resultado

Plataforma em produção, bilingue, com vendas reais via Stripe.

O que mudaria

Servir ficheiros privados por rota autenticada foi simples e robusto; a parte cara foi manter as duas cópias editoriais sincronizadas — numa próxima versão o conteúdo viveria num CMS com fluxo de tradução.

Stack

Next.js 15 · TypeScript · MongoDB · NextAuth · Stripe · next-intl · Cloudinary · Resend · Vercel

Próximo projeto

Ferri Schoedl Advocacia

Um escritório de advocacia que é também editora e escola.

Site institucional de um escritório de advocacia em São Paulo com loja de livros jurídicos, cursos preparatórios e publicações — pagamentos Stripe e leitura protegida.

Ver projeto
Homepage Ferri Schoedl