> ## Documentation Index
> Fetch the complete documentation index at: https://supastack.dev/llms.txt
> Use this file to discover all available pages before exploring further.
> For the full documentation corpus in one file, fetch: https://supastack.dev/llms-full.txt

# Escrever artigos de blogue

Publica artigos locais e tipados com categorias e links de guias funcionais.

## Instalação e configuração

Antes de qualquer etapa, leia [Antes de começar](https://supastack.dev/pt/docs/web/before-you-start.md) e [Noções básicas sobre terminal](https://supastack.dev/pt/docs/web/terminal-basics.md). Estas instruções presumem que você abriu o monorepo supastack completo no VS Code; sua raiz package.json marca a raiz do repositório. Nos comandos pnpm, um pacote de espaço de trabalho é um aplicativo ou uma pasta de código compartilhado; no produto, um espaço de trabalho é o contêiner de dados e o limite de segurança de uma equipe. corepack pnpm --filter ... seleciona um pacote do monorepo enquanto os comandos são executados a partir de sua raiz. Se você abriu apenas uma pasta móvel ou desktop sincronizada, ela não contém o back-end da Web, a configuração do Docker ou os scripts raiz: execute o back-end deste monorepo ou de um servidor hospedado acessível e use os próprios scripts da pasta da plataforma. Uma variável de ambiente é uma configuração nomeada armazenada em um arquivo .env local ou no painel de hospedagem; reinicie o aplicativo relevante após alterá-lo e mantenha os segredos do servidor fora dos valores NEXT_PUBLIC_ e EXPO_PUBLIC_.

1. No VS Code, abra apps/web/src/resources/content.ts e copie um artigo completo próximo como ponto de partida; a cópia do artigo fica no repositório, não em um painel de publicação.

2. Dê ao artigo um novo slug, título, categoria, data, seções e um slug de guia existente.

3. Na raiz do repositório, execute corepack pnpm --filter @supastack/web dev e abra http://localhost:3000/blog/<your-slug>. Esperado: o artigo e seu link de guia relacionado são carregados localmente antes de você compartilhar o URL.

O conteúdo do blog é armazenado em src/resources/content.ts e blog-posts.ts. Este é conteúdo gerenciado por repositório; não há serviço de publicação CMS. Cada postagem precisa de um slug, título, descrição, categoria, data, guia relacionado e seções exclusivos.

```
{
  slug: 'your-article',
  title: 'A specific reader question',
  category: 'Guides',
  date: '2026-09-07',
  guide: 'web/local-setup',
  sections: [{ id: 'start', title: 'Start here', paragraphs: ['Your original text.'] }]
}
```


## Comandos para copiar

Siga os comentários para ver em qual pasta um comando é executado. Se dois terminais estiverem rotulados, abra duas janelas de terminal e mantenha o primeiro comando em execução enquanto usa o segundo.

```
corepack pnpm --filter @supastack/web dev

# Replace <your-slug> with the article slug:
# http://localhost:3000/blog/<your-slug>
corepack pnpm test -- apps/web/src/resources/content.test.ts
```


## Fluxo de implementação

Segue um objeto Post existente completo para os campos tipados restantes. Mantém o slug estável após publicação para que URLs partilhados continuem a funcionar. Os títulos precisam de IDs de secção únicos para o índice e links de âncora.

As categorias derivam do catálogo de artigos. O índice usa filtragem por URL e as rotas de artigo geram os seus metadados a partir do conteúdo. O valor guide deve corresponder a um slug de documentação existente; conteúdo relacionado deve levar a um próximo passo útil.


## Verificação e resolução de problemas

Se o artigo retornar 404, verifique se seu slug é único e se foi adicionado à lista de artigos em apps/web/src/resources/content.ts.. Se o índice não levar a lugar nenhum, atribua a cada seção um ID exclusivo. Execute corepack pnpm test -- apps/web/src/resources/content.test.ts da raiz para ver erros de validação de conteúdo.

Corre os testes de conteúdo, abre a rota do artigo, segue o seu guia relacionado e verifica o índice filtrado. Verifica datas e afirmações contra as fontes. Não publiques links placeholder nem afirmes que uma integração foi verificada só porque aparece num artigo.


## Seguinte

[Documentação do produto](https://supastack.dev/pt/docs/web/docs-site.md)
