jtakeit
Teste grátis

Next.js CMS para sites de clientes

CMS para Next.js em sites de clientes que o seu agente escreve

O jtakeit é um CMS para Next.js baseado em git: o seu agente gera um export estático em um repositório seu, o dono edita tocando no texto da página e a plataforma cuida de formulários, reservas, hospedagem e domínio.

zsh — client-site
$ npx create-next-app@latest client-site --ts --app
$ cd client-site
# next.config.mjs: output 'export', basePath from SITE_URL
$ npm run build
$ ls dist
404.html  _meta.json  _next  index.html  robots.txt  sitemap.xml
$ git push origin main
# then, over MCP: validate_catalogue → commit_and_build
Um export estático do Next.js organizado pelo contrato do jtakeit: um build, na pasta que a plataforma serve.

01/ o que ele precisa

Do que um CMS para Next.js precisa em sites de clientes

Um site de cliente feito em Next.js precisa de mais do que um lugar para guardar textos. O dono precisa mudar o próprio texto sem ligar para você, e o site ainda precisa receber contatos, aceitar reservas e deixar o cliente sair levando os dados dele.

  • Edições que não quebram o design

    O dono toca no texto da página e preenche só os campos que o catálogo declara. Sem botão de adicionar página ou bloco, de propósito.

  • Conteúdo no seu repositório

    Os textos publicados são JSON no repositório git que você tem. Cada salvamento é um commit.

  • Formulários de contato

    Os formulários são protegidos contra spam, e os contatos chegam no Telegram, por email ou na caixa de entrada do painel.

  • Reservas pagas

    O módulo de reservas envia as reservas pagas direto para o Stripe do próprio negócio.

  • Uma prévia antes do pagamento

    O cliente aprova o site de verdade, em uma prévia, antes de ele entrar no ar.

  • Uma porta de saída

    Contatos e reservas são exportados em CSV e JSON. A exportação nunca exige assinatura ativa.

02/ git ou api

Baseado em git, ou um headless CMS para Next.js?

Um headless CMS guarda o conteúdo no próprio banco de dados e o entrega por uma API — uma boa escolha quando uma equipe de conteúdo publica para um site, um app e mais. Um site de cliente tem um dono e um site, então o jtakeit guarda os textos no repositório, ao lado do código.

Onde o conteúdo fica: um headless CMS típico, descrito em termos gerais, comparado com o jtakeit. Cada produto é diferente — confira aquele que você está considerando.
Um headless CMS típicojtakeit
Conteúdo publicadoNo banco de dados do CMS, buscado pela API deleJSON no seu repositório
Como o build o recebeUma chamada de API a partir do build ou do servidorUm arquivo que a plataforma monta para cada build
Um salvamentoUma atualização de registroUm commit; os rascunhos ficam no banco de dados da plataforma
Onde o dono editaUm app de administração separadoNa própria página, tocando no texto
Formulários, reservas, hospedagemFora do CMS, adicionados à parteOperados pela plataforma, com cobrança, backups e o domínio
O site como estava em marçoDepende do histórico do CMSUm comando no git

03/ export estático

Export estático do Next.js no jtakeit

A plataforma faz o build de todo site do mesmo jeito: roda o build do projeto e depois serve a pasta que o build grava. O Next.js se encaixa como export estático — HTML gerado no build, sem nenhum servidor rodando quando alguém visita.

next.config.mjs · package.json · public/_meta.json
// next.config.mjs
const site = new URL(process.env.SITE_URL ?? 'http://localhost:3000/');

export default {
  output: 'export',      // static HTML, no server at request time
  basePath: site.pathname.replace(/\/$/, ''), // '' live, '/p/<slug>' in preview
  trailingSlash: true,   // /about/index.html, not /about.html
  images: { unoptimized: true },
};

// package.json — the platform runs `npm run build` and serves dist/
"scripts": { "build": "next build && rm -rf dist && cp -R out dist" }

// public/_meta.json — copied into dist/ with the rest of public/
{ "immutable": ["/_next/static/"] }
Um export estático grava na própria pasta por padrão, então o script de build copia o resultado para a pasta que a plataforma serve.
lib/jtk.ts · app/page.tsx · app/robots.ts
// lib/jtk.ts — runs at build time, never in the browser
import { readFileSync } from 'node:fs';

const file = process.env.JTK_CONTENT_FILE;
export const published = file ? JSON.parse(readFileSync(file, 'utf8')) : null;

// data-jtk-path only when the platform asks for it
export const tap = (path: string) =>
  process.env.PUBLIC_JTK_ANNOTATE ? { 'data-jtk-path': path } : {};

// app/page.tsx
<h1 {...tap('blocks[0].title')}>{hero.title}</h1>

// app/robots.ts
export const dynamic = 'force-static';
const site = process.env.SITE_URL!.replace(/\/?$/, '/');
export default function robots() {
  return { rules: { userAgent: '*', allow: '/' },
           sitemap: new URL('sitemap.xml', site).href };
}
Leia os textos publicados no build; anote só quando a plataforma pedir.

Definidas em todo build

  • SITE_URLo endereço do site: o host do canonical e do sitemap
  • PUBLIC_JTK_ANNOTATEquando definida, marque cada campo que o dono pode editar
  • JTK_CONTENT_FILEonde o conteúdo publicado foi montado para este build ler

O que o build precisa conter

  • Uma página própria para cada endereço — cada página na sua própria pasta, não um arquivo HTML solto ao lado dos outros.
  • Assets que funcionam no endereço da prévia. Uma prévia é servida em um caminho próprio, então o caminho base vem do endereço do site que a plataforma define.
  • Uma página 404, que o export estático gera para você.
  • Um robots.txt que deixe os rastreadores entrarem, e um sitemap no endereço do site.
  • Um canonical nesse host em cada página, e nenhum noindex em lugar nenhum — a plataforma recusa um build que tenha um.
  • Uma nota de cache que marca os assets com hash do Next como imutáveis, para ficarem em cache para sempre.
  • O catálogo do que o dono pode editar, escrito à mão ou pela sua própria ferramenta e verificado pela plataforma. Os formulários enviam os contatos para a plataforma.

04/ escrito pelo seu agente

Next.js, com o seu agente montando o contrato

O Astro é o scaffold que o jtakeit oferece. No Next.js não há starter para clonar: você — ou o seu agente de IA, o Claude Code, por exemplo, pelo servidor MCP do jtakeit — organiza o projeto seguindo o contrato documentado, e a plataforma o verifica do mesmo jeito que verifica qualquer outro site.

Scaffold AstroExport estático do Next.js
Ponto de partidaO scaffold Astro do jtakeitO seu próprio projeto Next.js
CatálogoGerado e verificado pela ferramenta de catálogo do scaffoldEscrito à mão ou pela sua própria ferramenta
Formulários e specimensIncluídosPor sua conta; os formulários enviam os contatos para a plataforma
DependênciasPré-instaladasInstaladas pelo seu build
Um buildMenos de um minutoCerca de 90 segundos

Como o fluxo funciona com o Claude Code →
Como a edição é declarada no scaffold Astro →

05/ como escolher

Como escolher o melhor CMS para sites de clientes em Next.js

Comece pelo que o site precisa fazer quando alguém o visita. Se ele precisa do servidor no momento da requisição — incremental static regeneration, API routes, middleware, server actions ou páginas renderizadas a cada requisição —, o jtakeit não é a ferramenta: ele serve apenas saída estática, em qualquer framework.

Se o site pode ser gerado antecipadamente, a pergunta passa a ser quem o edita. O jtakeit é para desenvolvedores cujos clientes devem mudar as próprias palavras — e nada mais — sem ligar para você, e que preferem não operar formulários, reservas, cobrança, backups, hospedagem e o domínio por conta própria.

Não está preso ao Next.js? O Astro CMS para sites de clientes é o scaffold oferecido e faz o build em menos de um minuto. Como a edição baseada em git funciona em qualquer gerador está na página do CMS estático para sites de clientes.

06/ perguntas

Perguntas sobre o CMS para Next.js

O jtakeit suporta Next.js?
Sim, como export estático. A plataforma roda o build do projeto e serve a pasta que ele grava, então um site Next.js funciona quando é gerado antecipadamente como export estático e copiado para essa pasta. O Astro é o scaffold que o jtakeit oferece; no Next.js, você mesmo organiza o projeto seguindo o mesmo contrato documentado.
Posso usar o App Router?
O App Router consegue gerar um export estático desde que nada no site precise de servidor no momento da requisição: sem incremental static regeneration, sem route handlers ou server actions executados a cada requisição, sem middleware e sem renderização que dependa da requisição. Esse é um limite do próprio static export do Next.js, então confira o seu app na documentação de static export do Next.js.
Existe um starter oficial para Next.js?
Não. Não existe starter, plugin nem SDK para Next.js. O scaffold que o jtakeit oferece é o Astro. No Next.js, você — ou o seu agente de IA — monta o contrato documentado: o build grava na pasta que a plataforma serve, lê os textos publicados de um arquivo que a plataforma prepara, e o catálogo do que o dono pode editar é escrito à mão ou pela sua própria ferramenta e verificado pela plataforma.
Quanto tempo leva um build?
Cerca de 90 segundos para um site que não está no scaffold Astro, porque o build instala as suas próprias dependências. O scaffold Astro já vem com as dependências pré-instaladas e faz o build em menos de um minuto.
Como o cliente edita um site Next.js?
Tocando no texto da página. O catálogo do site declara quais campos o dono pode preencher, e, quando a plataforma pede, as suas páginas marcam esses campos. Cada salvamento é um commit no seu repositório, e o build seguinte lê os textos publicados do arquivo que a plataforma prepara.
Quanto custa?
Cadastrar-se, criar e ver a prévia são grátis. Quando um site entra no ar, você paga um preço de atacado por site no ar, por mês ou por ano, e cobra do cliente o seu próprio preço — igual no Next.js e no Astro. Os valores estão na página de preços.

07/ teste grátis

Teste em um site de cliente de verdade

Cadastre-se no painel e crie o seu primeiro site de cliente — no scaffold Astro ou como export estático do Next.js. Você paga um preço de atacado só quando um site entra no ar.

Teste grátisadmin.jtakeit.com

  • Grátis até um site entrar no ar
  • Depois, um preço de atacado por site no ar, a partir de €5 por mês
  • O código fica no seu repositório git