@riligar/agents-kit 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/.agent/skills/riligar-design-system/SKILL.md +55 -0
  2. package/.agent/skills/riligar-design-system/assets/theme.js +113 -0
  3. package/.agent/skills/riligar-design-system/references/anti-patterns.md +36 -0
  4. package/.agent/skills/riligar-design-system/references/design-system.md +113 -0
  5. package/.agent/skills/riligar-design-system/references/images/1R2bQt3sbej3wnOY1CzfuxBTFGs.jpeg +0 -0
  6. package/.agent/skills/riligar-design-system/references/images/AMHVTwvXORjj3X8El59HL1MsjA.jpeg +0 -0
  7. package/.agent/skills/riligar-design-system/references/images/E4BSw6KHGDGMwsyv95cOa9bcta0.jpeg +0 -0
  8. package/.agent/skills/riligar-design-system/references/images/EwwLnyjifpH8aT4o9OYb4zmuU.jpeg +0 -0
  9. package/.agent/skills/riligar-design-system/references/images/JXpiVPGQAlCoSPheFiv7XIo.jpeg +0 -0
  10. package/.agent/skills/riligar-design-system/references/images/K3aMG2lUKgIMnch6nKHeyaNkY.jpeg +0 -0
  11. package/.agent/skills/riligar-design-system/references/images/PjZ3v7ODdeBewzcBtIB1CwSwY.jpeg +0 -0
  12. package/.agent/skills/riligar-design-system/references/images/St7v862tpyR6MnIY3Lvr0jkd8I.jpeg +0 -0
  13. package/.agent/skills/riligar-design-system/references/images/WLmykbH6cFIJQ2logW1FiST1K3g.jpeg +0 -0
  14. package/.agent/skills/riligar-design-system/references/images/XHjqY7bWbsoyHD8E8K5p0Wm8kWA.jpeg +0 -0
  15. package/.agent/skills/riligar-design-system/references/images/dgn7biiYdKjxwkYGC84E3APk63Q.jpeg +0 -0
  16. package/.agent/skills/riligar-design-system/references/images/dgn7biiYdKjxwkYGC84E3APk63Q_sips.jpeg +0 -0
  17. package/.agent/skills/riligar-design-system/references/images/ioNOnyTfpolkwrFsdoBVsMGQ.jpeg +0 -0
  18. package/.agent/skills/riligar-design-system/references/images/xJVNp4LsZrmOYqTYgnj82rglWcA.jpeg +0 -0
  19. package/.agent/skills/riligar-design-system/references/master-patterns.md +140 -0
  20. package/.agent/skills/riligar-design-system/references/visual-references.md +71 -0
  21. package/.agent/skills/riligar-dev-autopilot/SKILL.md +63 -0
  22. package/.agent/skills/riligar-dev-landing-page/SKILL.md +53 -0
  23. package/.agent/skills/riligar-dev-landing-page/assets/original-2a03320f967a884fd2ad275d788f32e5.webp +0 -0
  24. package/.agent/skills/riligar-dev-landing-page/assets/original-481d7179109272dcaff2516fef62b718.webp +0 -0
  25. package/.agent/skills/riligar-dev-landing-page/assets/original-56d848520060ca714456601d1a7417cd.webp +0 -0
  26. package/.agent/skills/riligar-dev-landing-page/assets/original-93104cd260129cd6b76dac4119622eaf.webp +0 -0
  27. package/.agent/skills/riligar-dev-landing-page/assets/original-c5d259b0497cec98c36c48fc33ebbde6.webp +0 -0
  28. package/.agent/skills/riligar-dev-landing-page/assets/original-e865b2464fdf5ca567af716e1ed4fd16.webp +0 -0
  29. package/.agent/skills/riligar-dev-landing-page/assets/original-f1459f5315f0045705c2ca4937204146.webp +0 -0
  30. package/.agent/skills/riligar-dev-landing-page/assets/original-f67954754fdc2fc57009369fd3437205.webp +0 -0
  31. package/.agent/skills/riligar-dev-landing-page/assets/screencapture-caddaddy-app-2025-11-03-20_16_14.webp +0 -0
  32. package/.agent/skills/riligar-dev-landing-page/assets/screencapture-ciromaciel-click-2026-01-06-17_08_01.webp +0 -0
  33. package/.agent/skills/riligar-dev-landing-page/assets/screencapture-notionsecondbrain-2026-01-06-16_07_56.webp +0 -0
  34. package/.agent/skills/riligar-dev-landing-page/assets/screencapture-skillsmp-2026-01-16-14_40_22.webp +0 -0
  35. package/.agent/skills/riligar-dev-landing-page/references/conversion-framework.md +39 -0
  36. package/.agent/skills/riligar-dev-landing-page/references/copywriting-guide.md +38 -0
  37. package/.agent/skills/riligar-dev-landing-page/references/section-blueprints.md +56 -0
  38. package/.agent/skills/riligar-dev-seo/SKILL.md +200 -0
  39. package/.agent/skills/riligar-dev-seo/references/checklist.md +87 -0
  40. package/.agent/skills/riligar-dev-seo/references/implementation.md +215 -0
  41. package/.agent/skills/riligar-dev-seo/references/structured-data.md +119 -0
  42. package/.agent/skills/riligar-infrastructure/SKILL.md +126 -0
  43. package/.agent/skills/riligar-infrastructure/references/infrastructure.md +229 -0
  44. package/.agent/skills/riligar-marketing-copy/SKILL.md +117 -0
  45. package/.agent/skills/riligar-marketing-copy/references/examples.md +256 -0
  46. package/.agent/skills/riligar-marketing-copy/references/style-guide.md +112 -0
  47. package/.agent/skills/riligar-tech-stack/SKILL.md +114 -0
  48. package/.agent/skills/riligar-tech-stack/references/tech-stack.md +131 -0
  49. package/.agent/skills/skill-creator/LICENSE.txt +202 -0
  50. package/.agent/skills/skill-creator/SKILL.md +356 -0
  51. package/.agent/skills/skill-creator/references/output-patterns.md +82 -0
  52. package/.agent/skills/skill-creator/references/workflows.md +28 -0
  53. package/.agent/skills/skill-creator/scripts/init_skill.py +303 -0
  54. package/.agent/skills/skill-creator/scripts/package_skill.py +110 -0
  55. package/.agent/skills/skill-creator/scripts/quick_validate.py +95 -0
  56. package/LICENSE +201 -0
  57. package/README.md +39 -0
  58. package/bin/cli.js +66 -0
  59. package/package.json +62 -0
@@ -0,0 +1,53 @@
1
+ ---
2
+ name: riligar-dev-landing-page
3
+ description: Specialist in High-Conversion Landing Pages using RiLiGar Design System. Use for: (1) Creating marketing/sales pages, (2) Structuring conversion flows (AIDA/PAS), (3) Implementing high-trust components (Hero, Social Proof, Pricing), (4) Writing persuasive copy.
4
+ license: Apache-2.0
5
+ ---
6
+
7
+ # RiLiGar Landing Page Architect
8
+
9
+ You are a conversion optimization expert and UI architect specializing in landing pages. Your mission is to create pages that **convert**, using the minimalist "Content-First" aesthetic of RiLiGar.
10
+
11
+ ## Philosophy: "Trust Through Clarity"
12
+
13
+ A landing page must be a slippery slope: the user should slide effortlessly from the headline to the CTA.
14
+
15
+ - **Zero Friction:** No distractions. Every element must support the primary goal.
16
+ - **High Trust:** Professional typography, perfect alignment, and social proof.
17
+ - **Value First:** Focus on benefits, not just features.
18
+
19
+ ## Guia de Referência
20
+
21
+ Para construir páginas de alta conversão:
22
+
23
+ - **[Conversion Frameworks](references/conversion-framework.md)**: Estruturas psicológicas (AIDA, PAS) e fluxo narrativo.
24
+ - **[Section Blueprints](references/section-blueprints.md)**: Layouts "Gold Standard" para seções críticas (Hero, Bento Grids, Pricing).
25
+ - **[Copywriting Guide](references/copywriting-guide.md)**: Tom de voz e padrões de texto persuasivo.
26
+ - **[Visual Knowledge Base](assets/)**: Diretório de referências visuais e layouts reais para inspiração estética e estrutural.
27
+
28
+ ## Como Usar esta Skill
29
+
30
+ Sempre que gerar ou editar uma landing page:
31
+
32
+ 1. **Analise os Assets:** Consulte as imagens em `assets/` para capturar padrões de espaçamento, hierarquia visual e tratamento de componentes que já funcionam no ecossistema RiLiGar.
33
+ 2. **Referência Cruzada:** Use os `original-*.webp` para layouts modulares e os `screencapture-*.webp` para fluxos completos de página.
34
+
35
+ ## Checklist de Conversão (The "Grand-Slam" Verification)
36
+
37
+ Antes de validar qualquer Landing Page, verifique:
38
+
39
+ 1. [ ] **The 3-Second Rule:** O Hero deixa claro _o que é_, _para quem é_ e _qual o benefício_ em 3 segundos?
40
+ 2. [ ] **CTA Contrast:** O botão de chamada para ação se destaca visualmente mas segue o tema?
41
+ 3. [ ] **Social Proof:** Existe prova social visível "above the fold" ou logo após?
42
+ 4. [ ] **Objection Handling:** A seção de FAQ ou Benefícios mata as principais objeções?
43
+ 5. [ ] **Mobile Flow:** A experiência em mobile é tão fluida quanto no desktop? (Stacking correto).
44
+ 6. [ ] **Scannability:** O texto é escaneável? (Headlines fortes, bullet points, ícones).
45
+ 7. [ ] **Speed:** Imagens otimizadas e código limpo (sem bloat).
46
+ 8. [ ] **RiLiGar Compliance:** Segue o design system? (Sem CSS inline, Mantine nativo).
47
+
48
+ ## Princípios de Layout
49
+
50
+ 1. **Single Column Mobile:** Em mobile, tudo deve ser uma coluna única confortável.
51
+ 2. **Alternating Layouts:** Use padrões "Zig-Zag" (Imagem esq/Texto dir -> Texto esq/Imagem dir) para manter o interesse.
52
+ 3. **Bento Grids:** Para features, use grids estilo Bento para densidade de informação organizada.
53
+ 4. **Whitespace is Luxury:** Use muito espaço em branco para dar sofisticação e foco.
@@ -0,0 +1,39 @@
1
+ # Conversion Frameworks & Psychology
2
+
3
+ Use these psychological frameworks to structure the narrative flow of the Landing Page.
4
+
5
+ ## 1. The "Why" Before "How" (Golden Circle)
6
+
7
+ Start with the belief/mission (Why), then the process (How), then the product (What).
8
+
9
+ - **Why:** "We believe design should be invisible."
10
+ - **How:** "By removing all CSS files and focusing on content."
11
+ - **What:** "A headless UI library for minimalists."
12
+
13
+ ## 2. P.A.S. (Problem - Agitation - Solution)
14
+
15
+ Best for SaaS and solution-oriented products.
16
+
17
+ 1. **Problem:** Identify the pain point clearly.
18
+ - _Ex:_ "Managing design systems is a nightmare of broken consistency."
19
+ 2. **Agitation:** Twist the knife. Make the problem feel urgent.
20
+ - _Ex:_ "Every new hire breaks the UI. You spend more time reviewing CSS than shipping features."
21
+ 3. **Solution:** Present your product as the only logical cure.
22
+ - _Ex:_ "RiLiGar enforces consistency via props. No CSS files allowed."
23
+
24
+ ## 3. A.I.D.A. (Attention - Interest - Desire - Action)
25
+
26
+ Classic structure for longer sales pages.
27
+
28
+ 1. **Attention:** Hook them in the Hero section with a big promise.
29
+ 2. **Interest:** Keep them reading with interesting facts or counter-intuitive insights.
30
+ 3. **Desire:** Make them want it using social proof and benefit-focused copy.
31
+ 4. **Action:** Tell them exactly what to do (CTA).
32
+
33
+ ## 4. The "Slippery Slope"
34
+
35
+ The goal of every sentence is to get the user to read the next sentence.
36
+
37
+ - Short paragraphs.
38
+ - High contrast headings.
39
+ - Visual interruptions (images/icons) to break monotony.
@@ -0,0 +1,38 @@
1
+ # Copywriting Guide for High Conversion
2
+
3
+ Words sell. Design just builds trust so the words can do their job.
4
+
5
+ ## Tone of Voice: "The Confident Expert"
6
+
7
+ - **Direct:** "Get more leads." (Not: "We help you try to get more leads")
8
+ - **Concise:** Remove every unnecessary word. Adverbs are the enemy.
9
+ - **You-Centric:** Use "You" 3x more than "We".
10
+
11
+ ## Headline Formulas (The 80/20)
12
+
13
+ 80% of people read the headline. 20% read the rest.
14
+
15
+ 1. **The "Big Benefit" + "Timeframe":**
16
+ - _Ex:_ "Build your landing page in 5 minutes."
17
+ 2. **The "Value" without "Pain":**
18
+ - _Ex:_ "Get SEO-ready content without the writer's block."
19
+ 3. **The "Desirable Outcome" for "Specific Audience":**
20
+ - _Ex:_ "Automated bookkeeping for creative agencies."
21
+
22
+ ## Power Words & Phrases
23
+
24
+ Sprinkle these for emotional impact:
25
+
26
+ - **Trust:** Guaranteed, Proven, Secure, endorsed, Certified.
27
+ - **Urgency:** Now, Today, Instant, Limited, Deadline.
28
+ - **Exclusivity:** Access, VIP, Secret, Unveil, Join.
29
+ - **Ease:** Effortless, Simple, Roadmap, Step-by-step.
30
+
31
+ ## Formatting for Scanners
32
+
33
+ People don't read; they scan.
34
+
35
+ - **Bold** key benefits.
36
+ - Use **Bullet points** for lists > 3 items.
37
+ - Use **Subheads** to break up long text blocks.
38
+ - Keep lines under 60-80 characters for readability.
@@ -0,0 +1,56 @@
1
+ # Section Blueprints (Golden Standards)
2
+
3
+ Use these structural patterns to ensure high-quality layouts without reinventing the wheel.
4
+
5
+ ## 1. The "High-Impact" Hero
6
+
7
+ **Goal:** clarity in < 3 seconds.
8
+
9
+ - **Layout:** Center aligned (for focus) or Split (Left Text / Right Visual).
10
+ - **Components:**
11
+ - `Badge` (Pill): "V2.0 Now Available" (Top)
12
+ - `Title` (H1): 40-60 chars max. Tight line-height.
13
+ - `Text` (Subheadline): Dimmed color, larger size (lg/xl).
14
+ - `Group`: Primary CTA + Secondary CTA (Video demo or "Learn more").
15
+ - `Image/Container`: High-quality visual or app screenshot below or to the side.
16
+
17
+ ## 2. Bentham Grids (Feature Mosaic)
18
+
19
+ **Goal:** Show high density of features without overwhelming.
20
+
21
+ - **Layout:** `SimpleGrid` or `Grid` with cards of different spans.
22
+ - **Card Style:**
23
+ - `Paper` with `withBorder`.
24
+ - Icon on top left.
25
+ - Title + Description.
26
+ - _Optional:_ Mini-visual inside the card.
27
+ - **Pattern:** Main feature takes 2 columns, minor features take 1.
28
+
29
+ ## 3. "Wall of Love" (Social Proof)
30
+
31
+ **Goal:** Overwhelming trust.
32
+
33
+ - **Layout:** Masonry or Marquee.
34
+ - **Components:**
35
+ - `Marquee`: Logos of companies (grayscale, opacity 0.5 -> 1 on hover).
36
+ - `Card` (Testimonial): User avatar + Name + twitter handle + Short quote.
37
+
38
+ ## 4. The "No-Brainer" Pricing
39
+
40
+ **Goal:** Guide to the preferred plan.
41
+
42
+ - **Layout:** 3 Cards. Middle one popped out (scale 1.05) or highlighted border.
43
+ - **Components:**
44
+ - `Card`:
45
+ - Title ("Pro").
46
+ - Price ("$29/mo").
47
+ - List (`List` with `List.Item` and Check icon).
48
+ - CTA Button (`fullWidth`).
49
+ - **Psychology:** Anchor with a high price, make the middle one the transparent "best value".
50
+
51
+ ## 5. FAQ (Objection Handling)
52
+
53
+ **Goal:** Answer unasked questions to remove friction.
54
+
55
+ - **Layout:** `Accordion` (skin `neutral` or separated).
56
+ - **Content:** Address: Refund policy, Support, Technical reqs.
@@ -0,0 +1,200 @@
1
+ ---
2
+ name: riligar-dev-seo
3
+ description: Implementação de infraestrutura de SEO técnico seguindo a stack RiLiGar (React, Vite, Bun, Elysia). Use esta skill para configurar sitemaps, robots.txt, meta tags, OpenGraph, dados estruturados (JSON-LD) e URLs canônicas em projetos JavaScript.
4
+ allowed-tools: Read, Glob, Grep, Write, Edit, Bash, WebSearch
5
+ ---
6
+
7
+ # SEO Técnico (RiLiGar Tech Stack)
8
+
9
+ ## Arquivos da Skill
10
+
11
+ Esta skill utiliza os seguintes arquivos de referência:
12
+
13
+ - **SKILL.md** (este arquivo): Guia central de implementação
14
+ - **references/implementation.md**: Templates de código para React/Vite e Bun/Elysia
15
+ - **references/checklist.md**: Checklist pré-lançamento
16
+ - **references/structured-data.md**: Templates de markup JSON-LD
17
+
18
+ ## O que esta Skill cobre
19
+
20
+ 1. **Sitemaps** → Geração dinâmica via Bun/Elysia ou estática via Vite/`public`.
21
+ 2. **Robots.txt** → Diretivas para crawlers.
22
+ 3. **Meta Tags** → OpenGraph, Twitter Cards, descrições e títulos.
23
+ 4. **Dados Estruturados** → Schema markup (JSON-LD) para rich snippets.
24
+ 5. **URLs Canônicas** → Prevenção de conteúdo duplicado.
25
+ 6. **Performance & Vitals** → Otimização para os Core Web Vitals.
26
+
27
+ ---
28
+
29
+ # Part 1: Implementação de Sitemap
30
+
31
+ Em projetos RiLiGar, o sitemap pode ser estático (em `public/sitemap.xml`) ou dinâmico via backend Elysia.
32
+
33
+ ## Sitemap Estático (Vite `public/sitemap.xml`)
34
+
35
+ Para sites institucionais simples:
36
+
37
+ ```xml
38
+ <?xml version="1.0" encoding="UTF-8"?>
39
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
40
+ <url>
41
+ <loc>https://riligar.com/</loc>
42
+ <lastmod>2025-01-20</lastmod>
43
+ <changefreq>weekly</changefreq>
44
+ <priority>1.0</priority>
45
+ </url>
46
+ </urlset>
47
+ ```
48
+
49
+ ## Sitemap Dinâmico (Elysia /backend)
50
+
51
+ Se o site tiver conteúdo dinâmico (postagens de blog, produtos), crie um endpoint no Elysia:
52
+
53
+ ```javascript
54
+ // src/routes/seo.js
55
+ import { Elysia } from 'elysia'
56
+ import { db } from '../database/db'
57
+
58
+ export const seoRoutes = new Elysia().get('/sitemap.xml', async ({ set }) => {
59
+ const posts = await db.query.posts.findMany()
60
+ const baseUrl = 'https://riligar.com'
61
+
62
+ const xml = `<?xml version="1.0" encoding="UTF-8"?>
63
+ <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
64
+ <url>
65
+ <loc>${baseUrl}</loc>
66
+ <priority>1.0</priority>
67
+ </url>
68
+ ${posts
69
+ .map(
70
+ post => `
71
+ <url>
72
+ <loc>${baseUrl}/blog/${post.slug}</loc>
73
+ <lastmod>${post.updatedAt.toISOString().split('T')[0]}</lastmod>
74
+ <priority>0.7</priority>
75
+ </url>`
76
+ )
77
+ .join('')}
78
+ </urlset>`
79
+
80
+ set.headers['Content-Type'] = 'application/xml'
81
+ return xml
82
+ })
83
+ ```
84
+
85
+ ---
86
+
87
+ # Part 2: Implementação de Robots.txt
88
+
89
+ O `robots.txt` deve ficar na pasta `public/` do frontend ou ser servido pelo backend.
90
+
91
+ ```text
92
+ User-agent: *
93
+ Allow: /
94
+ Disallow: /api/
95
+ Disallow: /dashboard/
96
+ Disallow: /admin/
97
+
98
+ # Block AI training bots
99
+ User-agent: GPTBot
100
+ Disallow: /
101
+ User-agent: ChatGPT-User
102
+ Disallow: /
103
+ User-agent: CCBot
104
+ Disallow: /
105
+
106
+ Sitemap: https://riligar.com/sitemap.xml
107
+ ```
108
+
109
+ ---
110
+
111
+ # Part 3: Metadata e Meta Tags
112
+
113
+ Em SPAs (Single Page Applications) React/Vite, use metadados estáticos no `index.html` ou gerencie dinamicamente.
114
+
115
+ ## No index.html (Baseline)
116
+
117
+ ```html
118
+ <title>RiLiGar — Sua Tagline</title>
119
+ <meta
120
+ name="description"
121
+ content="Descrição chamativa de 150-160 caracteres."
122
+ />
123
+
124
+ <!-- OpenGraph -->
125
+ <meta
126
+ property="og:type"
127
+ content="website"
128
+ />
129
+ <meta
130
+ property="og:title"
131
+ content="RiLiGar — Sua Tagline"
132
+ />
133
+ <meta
134
+ property="og:description"
135
+ content="Descrição para redes sociais."
136
+ />
137
+ <meta
138
+ property="og:image"
139
+ content="https://riligar.com/og-image.png"
140
+ />
141
+
142
+ <!-- Twitter -->
143
+ <meta
144
+ name="twitter:card"
145
+ content="summary_large_image"
146
+ />
147
+ <meta
148
+ name="twitter:title"
149
+ content="RiLiGar — Sua Tagline"
150
+ />
151
+ <meta
152
+ name="twitter:image"
153
+ content="https://riligar.com/og-image.png"
154
+ />
155
+ ```
156
+
157
+ ## Dinâmico (Server-side Injection no Elysia)
158
+
159
+ Para melhores resultados de SEO em conteúdo dinâmico, o Elysia pode injetar as tags no HTML enviado:
160
+
161
+ ```javascript
162
+ // Exemplo simples de injeção no Elysia
163
+ app.get('/*', async ({ path }) => {
164
+ let html = await Bun.file('dist/index.html').text()
165
+
166
+ if (path.startsWith('/blog/')) {
167
+ const post = await getPost(path.split('/')[2])
168
+ html = html.replace('<title>RiLiGar</title>', `<title>${post.title} | RiLiGar</title>`)
169
+ html = html.replace('content="RiLiGar description"', `content="${post.excerpt}"`)
170
+ }
171
+
172
+ return new Response(html, { headers: { 'Content-Type': 'text/html' } })
173
+ })
174
+ ```
175
+
176
+ ---
177
+
178
+ # Part 4: Variáveis de Ambiente
179
+
180
+ Sempre configure a URL base:
181
+
182
+ ```bash
183
+ # .env
184
+ VITE_SITE_URL=https://riligar.com
185
+ SITE_URL=https://riligar.com
186
+ ```
187
+
188
+ ---
189
+
190
+ # Checklist de Implementação
191
+
192
+ 1. [ ] `robots.txt` configurado e bloqueando `/admin` e `/dashboard`.
193
+ 2. [ ] `sitemap.xml` gerado e acessível.
194
+ 3. [ ] Meta tags OpenGraph e Twitter presentes em todas as páginas públicas.
195
+ 4. [ ] Imagem OG de 1200x630px em `public/og-image.png`.
196
+ 5. [ ] Canonical URLs apontando para a versão preferencial.
197
+ 6. [ ] Dados estruturados (JSON-LD) para Organização no Home.
198
+ 7. [ ] Headers de performance (preload de fontes) no index.html.
199
+
200
+ Para detalhes específicos, consulte os arquivos na pasta `references/`.
@@ -0,0 +1,87 @@
1
+ # Checklist de SEO Técnico (RiLiGar)
2
+
3
+ ## Antes do Desenvolvimento
4
+
5
+ - [ ] Definir `SITE_URL` (com ou sem www) em todos os ambientes.
6
+ - [ ] Garantir que HTTPS é obrigatório.
7
+ - [ ] Planejar estrutura de URLs (Ex: `/blog/[slug]` vs `/p/[slug]`).
8
+
9
+ ---
10
+
11
+ ## Arquivos Essenciais
12
+
13
+ ### Sitemap (`sitemap.xml`)
14
+
15
+ - [ ] Arquivo acessível via `/sitemap.xml`.
16
+ - [ ] Inclui todas as páginas públicas e indexáveis.
17
+ - [ ] Exclui páginas privadas/auth (`/dashboard`, `/admin`).
18
+ - [ ] `lastmod` reflete a data real de atualização do conteúdo.
19
+ - [ ] Prioridades fazem sentido (1.0 Home, 0.8 principais).
20
+ - [ ] Conteúdo dinâmico incluído via geração no backend (se aplicável).
21
+
22
+ ### Robots.txt (`robots.txt`)
23
+
24
+ - [ ] Arquivo bloqueia indexação em ambientes de staging/dev.
25
+ - [ ] Permite crawlers em produção.
26
+ - [ ] Bloqueia caminhos sensíveis: `/api/`, `/dashboard/`, `/admin/`.
27
+ - [ ] Não bloqueia CSS/JS/Imagens necessários para renderização.
28
+ - [ ] Referencia a URL correta do sitemap.
29
+ - [ ] Política de bots de IA definida conforme necessidade.
30
+
31
+ ### Metadados Base (`index.html`)
32
+
33
+ - [ ] `<title>` padrão configurado com a marca.
34
+ - [ ] Meta Descrição atraente (150-160 caracteres).
35
+ - [ ] OpenGraph configurado (`og:title`, `og:description`, `og:image`, `og:type`).
36
+ - [ ] Twitter Card configurado (`twitter:card`, `twitter:image`).
37
+ - [ ] URL Canônica definida dinamicamente ou estaticamente.
38
+
39
+ ---
40
+
41
+ ## Imagens e Ativos
42
+
43
+ - [ ] OG Image padrão em `public/og-image.png`.
44
+ - [ ] OG Image com dimensões exatas: 1200x630 pixels.
45
+ - [ ] Favicon presente em múltiplos formatos (`.ico`, `.png`).
46
+ - [ ] Apple Touch Icon presente para iOS.
47
+
48
+ ---
49
+
50
+ ## Performance (Core Web Vitals)
51
+
52
+ Os Core Web Vitals impactam diretamente o ranking:
53
+
54
+ ### LCP (Largest Contentful Paint) < 2.5s
55
+
56
+ - [ ] Heros otimizados e sem lazy load (deve carregar rápido).
57
+ - [ ] Fontes críticas com `font-display: swap` ou preloading.
58
+ - [ ] Imagens pesadas em formato `.webp`.
59
+
60
+ ### INP (Interaction to Next Paint) / FID < 200ms
61
+
62
+ - [ ] Bundle de JavaScript otimizado (sem excessos).
63
+ - [ ] Scripts de terceiros (Analytics, Pixels) carregados com `defer`.
64
+
65
+ ### CLS (Cumulative Layout Shift) < 0.1
66
+
67
+ - [ ] Imagens têm `width` e `height` definidos no HTML/CSS.
68
+ - [ ] Espaços reservados para anúncios ou elementos dinâmicos.
69
+
70
+ ---
71
+
72
+ ## Dados Estruturados (JSON-LD)
73
+
74
+ - [ ] Schema `Organization` na Homepage.
75
+ - [ ] Schema `Article` em posts de blog.
76
+ - [ ] Schema `Product` em páginas de produto/serviço.
77
+ - [ ] Testado no [Google Rich Results Test](https://search.google.com/test/rich-results).
78
+
79
+ ---
80
+
81
+ ## Erros Comuns a Evitar
82
+
83
+ 1. **Bloquear JS em robots.txt:** Impede os bots de "verem" o site React.
84
+ 2. **Meta descrições duplicadas:** Cada página deve ter uma descrição única.
85
+ 3. **Falta de URL Canônica:** Gera problema de conteúdo duplicado.
86
+ 4. **Placeholder Text:** Nunca deixar "Lorem Ipsum" no ar.
87
+ 5. **Esquecer de liberar o sitemap no auth:** Crawlers não conseguem ler o arquivo.