Site de receitas culinΓ‘rias (letscozinha.com.br) construΓdo com Next.js. O conteΓΊdo gratuito (receitas e categorias) atrai visitantes e os converte em compradores de e-books.
π€ Agentes de IA: leia as regras de desenvolvimento e documentaΓ§Γ£o em CLAUDE.md.
- Node.js 20+
- pnpm
pnpm install
pnpm dev # http://localhost:3000| Script | DescriΓ§Γ£o |
|---|---|
pnpm dev |
Servidor de desenvolvimento |
pnpm build |
Build de produΓ§Γ£o |
pnpm start |
Servidor de produΓ§Γ£o |
pnpm lint |
Lint |
pnpm test |
Testes unitΓ‘rios (jest, tests/unit) |
pnpm analyze |
Build com anΓ‘lise de bundle |
pnpm index-now |
Submete URLs ao IndexNow |
pnpm print-recipe |
Imprime uma receita do CMS no terminal |
| VariΓ‘vel | DescriΓ§Γ£o |
|---|---|
CMS_URL |
URL do CMS (Strapi) |
CMS_TOKEN |
Token de API do CMS |
MEILISEARCH_HOST |
Host do Meilisearch (busca de receitas e e-books) |
MEILISEARCH_API_KEY |
Chave de API do Meilisearch |
LETS_COZINHA_API_KEY |
Chave para rotas internas de API (ex.: revalidaΓ§Γ£o) |
GA4_PROPERTY_ID |
Propriedade do Google Analytics 4 |
GOOGLE_SERVICE_KEY |
Credencial de service account do Google |
- Next.js (App Router) com React e TypeScript
- Tailwind CSS com tema centralizado (design tokens em
globals.css) - Strapi (headless CMS) - receitas, categorias, e-books e single types (
src/cms/) - Meilisearch - busca de receitas e e-books com busca semΓ’ntica (embedders OpenAI)
- Listmonk - newsletter, via rota interna
/api/subscribe - Parallel Routes - slots
@heroe@asidepara composiΓ§Γ£o de layout por rota
src/
βββ app/ # App Router
β βββ @hero/ # Slot do hero (home, vendas de e-book)
β βββ @aside/ # Slot do aside (LayoutAside configurΓ‘vel)
β βββ api/ # Rotas internas (subscribe, revalidate)
β βββ receitas/ # Lista e pΓ‘gina de receita
β βββ categorias/ # Lista e pΓ‘gina de categoria
β βββ ebooks/ # CatΓ‘logo e pΓ‘gina de vendas
βββ cms/ # Acesso ao Strapi e Meilisearch
βββ components/ # Componentes reutilizΓ‘veis
βββ methods/ # Helpers compartilhados
Vender e-books culinΓ‘rios atravΓ©s de conteΓΊdo gratuito e conversΓ΅es estratΓ©gicas. Toda decisΓ£o de design e produto usa este objetivo como critΓ©rio de desempate.
- Jakob's Law: Interface familiar (padrΓ΅es web conhecidos)
- Hick's Law: MΓ‘ximo 5 opΓ§Γ΅es por decisΓ£o para acelerar escolhas
- Miller's Law: MΓ‘ximo 7 itens por grupo/menu
- Fitts's Law: CTAs grandes (44px+) prΓ³ximos ao conteΓΊdo relevante
- Serial Position: E-books principais no inΓcio e fim das listas
- Cognitive Load: Uma aΓ§Γ£o principal por pΓ‘gina, reduzir esforΓ§o mental
- Chunking: Agrupar informaΓ§Γ΅es relacionadas (receitas por categoria)
- Choice Overload: MΓ‘ximo 3-4 e-books em destaque na home
- Peak-End Rule: Hero impactante + CTA final forte
- Von Restorff Effect: E-books destacados visualmente
- Aesthetic-Usability: Design belo = percepΓ§Γ£o de usabilidade
βββββββββββββββββββββββββββββββββββββββββ
β HEADER β β Fora do <main>
βββββββββββββββββββββββββββββββββββββββββ€
β <main> β
β βββββββββββββββββββββββββββββββββββββ β
β β HERO β |
β β (quando aplicΓ‘vel) β β
β βββββββββββββββββββββββββββββββββββββ€ β
β β βββββββββββββββ¬ββββββββββββββββββ β β
β β β CONTENT β ASIDE β | β
β β β (70%) β (30%) β | β
β β β (ConteΓΊdo) β (ConversΓ£o) β | β
β β βββββββββββββββ΄ββββββββββββββββββ | β
β βββββββββββββββββββββββββββββββββββββ β
β </main> β
βββββββββββββββββββββββββββββββββββββββββ€
β FOOTER β β Fora do <main>
βββββββββββββββββββββββββββββββββββββββββ
βββββββββββββββββββββββββββββββββββββββββ
β HEADER (compacto) β β Fora do <main>
βββββββββββββββββββββββββββββββββββββββββ€
β <main> β
β βββββββββββββββββββββββββββββββββββββ β
β β HERO (full-width) β |
β β (quando aplicΓ‘vel) β β
β βββββββββββββββββββββββββββββββββββββ€ β
β β CONTENT β β
β β (100% width) β β
β β β β
β β β’ SeΓ§Γ΅es integradas: β β
β β - Newsletter contextual β β
β β - Compartilhamento social β β
β β - CTAs de conversΓ£o β β
β βββββββββββββββββββββββββββββββββββββ€ β
β β ASIDE β β
β β (empilhado abaixo) β β
β β β β
β β β’ E-book contextual β β
β β β’ Quem Γ© a Lets β β
β β β’ Categorias β β
β βββββββββββββββββββββββββββββββββββββ β
β </main> β
βββββββββββββββββββββββββββββββββββββββββ€
β FOOTER (coluna ΓΊnica) β β Fora do <main>
βββββββββββββββββββββββββββββββββββββββββ
Responsivo: Mobile-first com breakpoints Tailwind padrΓ£o: sm (640px), md (768px), lg (1024px), xl (1280px), 2xl (1536px)
- Sticky Search: Input de busca fica fixo no topo quando focado, com scroll automΓ‘tico para o topo (apenas mobile)
- Compact Cards: Variant
compactpara cards menores em 2 colunas no mobile - Grid Responsivo:
grid-cols-2 md:grid-cols-3 lg:grid-cols-4 xl:grid-cols-5 - Progressive Enhancement: Desktop adiciona features, mobile Γ© a base
- Touch-First: Γreas de toque mΓnimas de 44px em todos os elementos interativos
Objetivo: Converter visitantes em compradores de e-books
- Hero: E-book principal + headline impactante + CTA grande
- Content: E-books em destaque (3-4 mΓ‘ximo - Choice Overload), newsletter geral, receitas populares (prova social)
Objetivo: Engajar usuΓ‘rios e converter sutilmente
- Search sticky no topo (mobile), resultados imediatos - Cognitive Load
- Cards compactos em grid responsivo (2 β 5 colunas)
- Category badges destacados nos cards - Von Restorff Effect
Objetivo: Entregar valor e converter no timing certo
Ordem do conteΓΊdo, baseada em psicologia de conversΓ£o:
- Valor primeiro: Breadcrumb + tΓtulo + galeria + ingredientes + modo de preparo completo (o usuΓ‘rio recebe o que veio buscar)
- Reciprocidade: Compartilhamento social apΓ³s o consumo do valor
- Commitment: Newsletter contextual no momento de maior satisfaΓ§Γ£o (Peak-End Rule)
- ConversΓ£o principal: E-book recomendado (variant
featured) quando hΓ‘ maior confianΓ§a estabelecida - RetenΓ§Γ£o: Receitas similares para manter engajamento e reduzir bounce
- Preview limitado: Apenas 2 parΓ‘grafos do modo de preparo, com gradiente de fade-out no segundo - Curiosity Gap
- Single CTA: Foco total na conversΓ£o do e-book especΓfico, zero distraΓ§Γ΅es
- Scarcity Principle: Preview limitado cria sensaΓ§Γ£o de exclusividade
Copy: tΓtulo aspiracional ("Para vocΓͺ que ama cozinhar"), texto conciso, conexΓ£o contextual com o nome da receita, tom elegante sem linguagem vendedora.
Objetivo: NavegaΓ§Γ£o eficiente por tipos de receita
- Grid de categorias com contador de receitas
- Sem Aside nesta pΓ‘gina
Objetivo: Listar receitas da categoria especΓfica
- Breadcrumb + tΓtulo da categoria (sem hero)
- Lista de receitas com variant
compacte paginaΓ§Γ£o
Objetivo: Maximizar vendas com pΓ‘gina comercial
- Grid comercial de e-books + newsletter especΓfica para e-books
Objetivo: Converter em compra com pΓ‘gina de vendas completa
EstratΓ©gia de conversΓ£o em 3 momentos:
- Hero com valor imediato: capa (full-width no mobile) + descriΓ§Γ£o + preΓ§o + CTA
- BenefΓcios detalhados para convencimento (campo
pagina_websiteem prose) - CTA final com reforΓ§o visual (imagem repetida + copy persuasivo) - Peak-End Rule e Mere Exposure Effect
- Aside minimal via parallel route - Cognitive Load: foco em uma aΓ§Γ£o (comprar)
- Structured Data: Product schema completo para SEO
Todos os asides usam o componente LayoutAside configurΓ‘vel, permitindo
ativar/desativar seΓ§Γ΅es por rota com manutenΓ§Γ£o centralizada:
- E-book em destaque: ConversΓ£o principal (
featuredEbook) - Quem Γ© a Lets Cozinha: Credibilidade da marca (
whoIsLets) - Categorias: NavegaΓ§Γ£o relacionada (
categories) - Newsletter personalizada: Quando especificada (
newsletter)
ExceΓ§Γ΅es:
- Receita (
/receitas/:slug): E-book como seΓ§Γ£o integrada no Content - Categorias (
/categorias): NΓ£o possui Aside - E-books (
/ebooks): Newsletter especΓfica, sem featured ebook - E-book (
/ebooks/:slug): Aside minimal (apenas newsletter/contato)
/conheca-a-lets- Sobre a autora (credibilidade)/contato- Suporte e confianΓ§a/politica-de-privacidade- Legal/termos-de-uso- Legal
