@horizon-framework/website-dev-docs 2.3.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.
@@ -0,0 +1,95 @@
1
+ # Checklist: Adicionar Campo — 13 Arquivos que Mudam
2
+
3
+ > Ao adicionar ou remover campo na busca, cards ou pagina do imovel.
4
+
5
+ ---
6
+
7
+ ## MAPA: Por onde um campo percorre
8
+
9
+ ```
10
+ CRM externo → Pacote conversor → API entity-schema → Banco → Frontend schema
11
+ → fields-lists → select-fields → busca → cards → pagina → impressao
12
+ ```
13
+
14
+ **SE ESQUECER QUALQUER PONTO, O CAMPO NAO FUNCIONA.**
15
+
16
+ ---
17
+
18
+ ## Arquivos que Mudam (ate 13)
19
+
20
+ ### Backend (apps/api/)
21
+
22
+ 1. **entity-schema.ts** — Adicionar campo com key, type, categories, ui.label, audit
23
+ 2. **create.sql** — ALTER TABLE adicionar coluna (se campo novo no banco)
24
+ 3. **generated-columns.sql** — Adicionar ao FTS tsvector (se campo textual buscavel)
25
+ 4. **computedFields/index.ts** — Se campo e computed (derivado de outros)
26
+
27
+ ### Prisma
28
+ 5. **Sync Prisma** — `npx prisma db pull` + `pnpm db:patch-relations` + `npx prisma generate`
29
+
30
+ ### Frontend Schema
31
+ 6. **schema.generated.json** — Regenerar: `npx tsx scripts/generate-schema.ts`
32
+
33
+ ### Frontend Listas
34
+ 7. **fields-lists.ts** — Adicionar campo na lista de atributos (FIELD_LISTS_REGISTRY)
35
+ 8. **select-fields.config.ts** — Adicionar campo no select dos cards
36
+
37
+ ### Frontend Busca
38
+ 9. **search-list/schema.ts** — Adicionar campo no schema Zod da busca
39
+ 10. **search-list/config/schema.ts** — Adicionar facet config
40
+ 11. **search-list/components/fields/** — Criar componente de filtro (se necessario)
41
+
42
+ ### Frontend Display
43
+ 12. **Resolvers** — Se campo precisa de resolver especifico
44
+ 13. **item-print** — Se campo deve aparecer na impressao
45
+
46
+ ---
47
+
48
+ ## Protocolo Passo a Passo
49
+
50
+ ### Etapa 1 — Backend
51
+ - [ ] Adicionar campo no entity-schema.ts (key, type, categories, ui, audit)
52
+ - [ ] Se campo novo no banco: `ALTER TABLE "Property" ADD COLUMN IF NOT EXISTS "campo" TIPO DEFAULT valor;`
53
+ - [ ] Se campo textual buscavel: adicionar ao generated-columns.sql (FTS)
54
+ - [ ] Se campo computed: adicionar logica em computedFields/index.ts
55
+ - [ ] Verificar: campo correto no entity-schema
56
+
57
+ ### Etapa 2 — Prisma
58
+ - [ ] `npx prisma db pull`
59
+ - [ ] `pnpm db:patch-relations`
60
+ - [ ] `npx prisma generate`
61
+ - [ ] Verificar: prisma generate sem erros
62
+
63
+ ### Etapa 3 — Reiniciar API
64
+ - [ ] REINICIAR A API (obrigatorio! Prisma Client cacheado!)
65
+ - [ ] Verificar: API inicia sem erros
66
+ - [ ] Se campo computed: re-sincronizar dados (upload)
67
+
68
+ ### Etapa 4 — Frontend Schema
69
+ - [ ] `cd apps/web && npx tsx scripts/generate-schema.ts`
70
+ - [ ] Verificar: campo aparece no schema.generated.json
71
+
72
+ ### Etapa 5 — Frontend Listas
73
+ - [ ] Adicionar campo em fields-lists.ts (se deve aparecer na pagina)
74
+ - [ ] Adicionar campo em select-fields.config.ts (se deve aparecer no card)
75
+
76
+ ### Etapa 6 — Frontend Busca (se campo filtravel)
77
+ - [ ] Adicionar no schema Zod da busca
78
+ - [ ] Adicionar config de facet
79
+ - [ ] Criar componente de filtro se necessario
80
+
81
+ ### Etapa 7 — Verificacao
82
+ - [ ] Rodar inspect-fields
83
+ - [ ] Testar: campo aparece na pagina do imovel
84
+ - [ ] Testar: campo aparece no card (se adicionado)
85
+ - [ ] Testar: filtro funciona na busca (se adicionado)
86
+ - [ ] `next build` sem erros
87
+
88
+ ---
89
+
90
+ ## Regras
91
+
92
+ 1. **Campos BOOLEAN em listas** — SEMPRE filtrar `.filter(f => f.value === true)` apos getFieldsByKeys
93
+ 2. **SEMPRE reiniciar API** apos mudancas no banco/Prisma
94
+ 3. **SEMPRE regenerar schema** apos mudancas no entity-schema
95
+ 4. **NUNCA usar ALTER TABLE** para adicionar coluna em tabela que nao existe (so ao trocar CRM inteiro)
@@ -0,0 +1,163 @@
1
+ # Checklist: Criar Site Novo — Template Horizon ate Publicacao
2
+
3
+ > Checklist completa para transformar o template Horizon base em um site de cliente.
4
+
5
+ ---
6
+
7
+ ## Fase 1 — Setup Inicial
8
+
9
+ - [ ] Clonar template Horizon base (horizon-starter-2.x)
10
+ - [ ] Criar repositorio no GitHub para o cliente
11
+ - [ ] Configurar pnpm install em todos os apps (web, api, automations)
12
+ - [ ] Criar banco PostgreSQL no DigitalOcean (ou provider)
13
+ - [ ] Executar extensoes PostGIS: `pnpm db:setup`
14
+ - [ ] Criar tabelas: `pnpm db:create`
15
+ - [ ] Gerar Prisma client: `npx prisma generate`
16
+ - [ ] Configurar .env em cada app (web, api, automations)
17
+ - [ ] Testar: API rodando na porta 5000
18
+ - [ ] Testar: Web rodando na porta 3001
19
+ - [ ] Testar: Automations rodando na porta 8080
20
+
21
+ ---
22
+
23
+ ## Fase 2 — Identidade do Cliente
24
+
25
+ ### Branding
26
+ - [ ] Trocar logo (`/public/brand/logo.svg` ou similar)
27
+ - [ ] Trocar favicon (`/public/brand/favicon.png`)
28
+ - [ ] Trocar OG image (`/public/brand/og-image.svg`, 800x450)
29
+ - [ ] Trocar cores primaria/secundaria no tema (tailwind config ou CSS vars)
30
+ - [ ] Trocar nome no title suffix (`capabilities/metatags/seo.ts`)
31
+
32
+ ### Contatos
33
+ - [ ] Editar `capabilities/contacts/data/contacts.data.ts` — telefones, emails, WhatsApp
34
+ - [ ] Editar redes sociais — Instagram, Facebook, etc.
35
+ - [ ] Configurar WhatsAppProvider — numero, mensagem, avatar do atendente
36
+
37
+ ### Textos Institucionais
38
+ - [ ] Trocar conteudo da pagina Quem Somos
39
+ - [ ] Trocar enderecos na pagina Localizacao
40
+ - [ ] Trocar textos na pagina Contato
41
+ - [ ] Trocar nome empresa nos Termos de Uso
42
+ - [ ] Trocar nome empresa na Politica de Privacidade
43
+ - [ ] Trocar texto da pagina Anuncie
44
+ - [ ] Trocar texto da pagina Encomende
45
+ - [ ] Trocar texto da pagina Obrigado
46
+
47
+ ---
48
+
49
+ ## Fase 3 — Integracao CRM
50
+
51
+ - [ ] Definir CRM do cliente (Jetimob, SI9, Publisher, Arbo)
52
+ - [ ] Instalar pacote CRM no backend: `pnpm add @horizon-integrations/{crm}-crm`
53
+ - [ ] Ler FICHA_TECNICA_INTEGRACAO.md do pacote CRM
54
+ - [ ] Configurar entity-schema.ts com schema do CRM
55
+ - [ ] Recriar tabela no banco com novos campos
56
+ - [ ] Sincronizar Prisma: `npx prisma db pull && npx prisma generate`
57
+ - [ ] Reiniciar API
58
+ - [ ] Fazer primeiro sync de dados (upload imoveis)
59
+ - [ ] Verificar: imoveis aparecendo na API
60
+ - [ ] Regenerar schema no frontend: `npx tsx scripts/generate-schema.ts`
61
+ - [ ] Verificar: imoveis aparecendo no site
62
+ - [ ] Rodar inspect-fields para verificar cobertura de campos
63
+ - [ ] Ajustar campos na busca (search-list/config)
64
+ - [ ] Ajustar campos nos cards (select-fields.config.ts)
65
+ - [ ] Ajustar campos na pagina do imovel (fields-lists.ts)
66
+
67
+ ---
68
+
69
+ ## Fase 4 — Configuracao do Frontend
70
+
71
+ ### Home Page
72
+ - [ ] Trocar hero (imagem, titulo, subtitulo)
73
+ - [ ] Configurar barra de busca (campos, opcoes)
74
+ - [ ] Configurar vitrines de destaque (filtros)
75
+ - [ ] Trocar categorias do carousel
76
+ - [ ] Trocar depoimentos (se houver)
77
+
78
+ ### Navegacao
79
+ - [ ] Verificar menus dinamicos (Venda, Locacao) — automatico via API
80
+ - [ ] Ajustar menus estaticos (Especiais, Institucional)
81
+ - [ ] Verificar footer
82
+ - [ ] Verificar menu mobile
83
+
84
+ ### Busca de Imoveis
85
+ - [ ] Verificar filtros disponiveis
86
+ - [ ] Verificar facets funcionando
87
+ - [ ] Verificar mapa (se lat/lng disponiveis)
88
+ - [ ] Verificar paginacao
89
+ - [ ] Verificar ordenacao
90
+
91
+ ### Pagina do Imovel
92
+ - [ ] Verificar fotos/galeria
93
+ - [ ] Verificar campos de atributos
94
+ - [ ] Verificar formulario de contato
95
+ - [ ] Verificar imoveis similares
96
+ - [ ] Verificar botao WhatsApp
97
+ - [ ] Verificar impressao (print)
98
+
99
+ ---
100
+
101
+ ## Fase 5 — Marketing e SEO
102
+
103
+ - [ ] Configurar Google Tag Manager ID (`capabilities/code-snippets/scripts-marketing.tsx`)
104
+ - [ ] Configurar Google Analytics ID
105
+ - [ ] Configurar Facebook Pixel ID
106
+ - [ ] Verificar sitemap.xml funcionando
107
+ - [ ] Verificar meta tags em cada pagina
108
+ - [ ] Verificar OG tags para compartilhamento
109
+ - [ ] Configurar redirects se necessario (`capabilities/redirects/`)
110
+
111
+ ---
112
+
113
+ ## Fase 6 — Automations (Leads)
114
+
115
+ - [ ] Configurar RESEND_API_KEY (emails)
116
+ - [ ] Configurar chaves do CRM (se enviar leads pro CRM)
117
+ - [ ] Testar envio de lead pelo formulario de contato
118
+ - [ ] Verificar email chegando
119
+ - [ ] Verificar lead chegando no CRM (se configurado)
120
+ - [ ] Configurar CORS para dominio do cliente
121
+
122
+ ---
123
+
124
+ ## Fase 7 — Deploy Vercel
125
+
126
+ - [ ] Criar projeto WEB na Vercel
127
+ - [ ] Criar projeto API na Vercel (region gru1)
128
+ - [ ] Criar projeto AUTOMATIONS na Vercel
129
+ - [ ] Configurar variaveis de ambiente em cada projeto
130
+ - [ ] Fazer primeiro deploy de cada app
131
+ - [ ] Testar: site funcionando no dominio Vercel
132
+ - [ ] Configurar dominio customizado do cliente
133
+ - [ ] Configurar DNS (A record ou CNAME)
134
+ - [ ] Verificar SSL (automatico Vercel)
135
+ - [ ] Testar: site funcionando no dominio do cliente
136
+
137
+ ---
138
+
139
+ ## Fase 8 — Verificacao Final
140
+
141
+ - [ ] Testar TODAS as paginas basicas no desktop
142
+ - [ ] Testar TODAS as paginas basicas no mobile
143
+ - [ ] Testar formularios (contato, anuncie, encomende)
144
+ - [ ] Testar busca de imoveis (filtros, mapa, paginacao)
145
+ - [ ] Testar favoritos
146
+ - [ ] Testar compartilhamento
147
+ - [ ] Testar impressao de imovel
148
+ - [ ] Testar WhatsApp flutuante
149
+ - [ ] Testar links de redes sociais
150
+ - [ ] Verificar Google Analytics recebendo dados
151
+ - [ ] Verificar performance (Lighthouse > 80)
152
+ - [ ] Verificar SEO (meta tags, sitemap, robots.txt)
153
+ - [ ] `next build` sem erros em web e api
154
+
155
+ ---
156
+
157
+ ## Fase 9 — Documentacao do Cliente
158
+
159
+ - [ ] Criar `/ai/horizon.config.md` com dados do cliente
160
+ - [ ] Criar `/ai/client/INFO.md` com informacoes do cliente
161
+ - [ ] Criar `/ai/client/CUSTOMIZACOES.md` com campos extras
162
+ - [ ] Atualizar Notion do cliente com estado do projeto
163
+ - [ ] Registrar no Notion: dominio, CRM, modulos, paginas ativas
@@ -0,0 +1,75 @@
1
+ # Checklist: Publicar Site — Deploy Vercel + Dominio
2
+
3
+ > Passos para colocar o site em producao.
4
+
5
+ ---
6
+
7
+ ## Fase 1 — Build Local
8
+
9
+ - [ ] `cd apps/web && pnpm build` — sem erros
10
+ - [ ] `cd apps/api && pnpm build` — sem erros
11
+ - [ ] `cd apps/automations && pnpm build` — sem erros
12
+ - [ ] Verificar: TypeScript sem erros em todos os apps
13
+
14
+ ---
15
+
16
+ ## Fase 2 — Criar Projetos na Vercel
17
+
18
+ ### API
19
+ - [ ] Criar projeto na Vercel: nome `{cliente}-api`
20
+ - [ ] Root directory: `apps/api`
21
+ - [ ] Framework: Next.js
22
+ - [ ] Region: gru1 (Sao Paulo)
23
+ - [ ] Configurar env vars: DATABASE_URL, API_SECRET_KEY, API_BASE_URL, FRONTEND_BASE_URL
24
+ - [ ] Deploy
25
+
26
+ ### Web
27
+ - [ ] Criar projeto na Vercel: nome `{cliente}-web`
28
+ - [ ] Root directory: `apps/web`
29
+ - [ ] Framework: Next.js
30
+ - [ ] Configurar env vars: API_SECRET_KEY, ADMIN_PASSWORD, NEXT_PUBLIC_SITE_URL, NEXT_PUBLIC_API_URL, NEXT_PUBLIC_AUTOMATIONS_URL
31
+ - [ ] Atualizar NEXT_PUBLIC_API_URL para URL da API na Vercel
32
+ - [ ] Deploy
33
+
34
+ ### Automations
35
+ - [ ] Criar projeto na Vercel: nome `{cliente}-automations`
36
+ - [ ] Root directory: `apps/automations`
37
+ - [ ] Framework: Next.js
38
+ - [ ] Configurar env vars: API_SECRET_KEY, RESEND_API_KEY, chaves CRM, NEXT_PUBLIC_API_URL
39
+ - [ ] Atualizar CORS allowed origins com dominio do cliente
40
+ - [ ] Deploy
41
+
42
+ ---
43
+
44
+ ## Fase 3 — Dominio Customizado
45
+
46
+ - [ ] Adicionar dominio no projeto Web da Vercel
47
+ - [ ] Configurar DNS no registrador do cliente:
48
+ - A record: `76.76.21.21` (Vercel)
49
+ - CNAME www: `cname.vercel-dns.com`
50
+ - [ ] Aguardar propagacao DNS (ate 48h, geralmente minutos)
51
+ - [ ] Verificar SSL automatico (Vercel gera certificado)
52
+ - [ ] Testar: site acessivel pelo dominio do cliente
53
+
54
+ ---
55
+
56
+ ## Fase 4 — Pos-Deploy
57
+
58
+ - [ ] Verificar: todas as paginas carregando
59
+ - [ ] Verificar: API respondendo (testar /api/property/search)
60
+ - [ ] Verificar: leads chegando (formulario de contato)
61
+ - [ ] Verificar: emails sendo enviados (Resend)
62
+ - [ ] Verificar: Google Analytics recebendo dados
63
+ - [ ] Verificar: sitemap.xml acessivel
64
+ - [ ] Verificar: robots.txt correto
65
+ - [ ] Verificar: OG tags funcionando (compartilhar no WhatsApp/Facebook)
66
+ - [ ] Verificar: performance Lighthouse > 80
67
+
68
+ ---
69
+
70
+ ## IMPORTANTE
71
+
72
+ - NUNCA matar portas do frontend (3000, 3001) — pode ter OUTRO site rodando
73
+ - API backend (5000) — pode matar e reiniciar livremente
74
+ - Atualizar NEXT_PUBLIC URLs apos deploy (apontam para Vercel, nao localhost)
75
+ - CORS do automations deve incluir dominio de producao do cliente
@@ -0,0 +1,96 @@
1
+ # Checklist: Trocar CRM — Migrar de um Provedor para Outro
2
+
3
+ > 25+ passos para migrar completamente de um CRM para outro.
4
+
5
+ ---
6
+
7
+ ## Pre-requisitos
8
+
9
+ - [ ] Saber CRM atual e CRM destino
10
+ - [ ] Ter pacote NPM do CRM destino disponivel (`@horizon-integrations/{crm}-crm`)
11
+ - [ ] Ler FICHA_TECNICA_INTEGRACAO.md do CRM destino
12
+ - [ ] Ter credenciais de API do novo CRM
13
+
14
+ ---
15
+
16
+ ## Fase 1 — Backend
17
+
18
+ ### Pacote CRM
19
+ - [ ] Instalar novo pacote: `cd apps/api && pnpm add @horizon-integrations/{novo-crm}-crm`
20
+ - [ ] Remover pacote antigo: `pnpm remove @horizon-integrations/{antigo-crm}-crm`
21
+ - [ ] Atualizar package.json
22
+
23
+ ### Entity Schema
24
+ - [ ] Abrir `src/modules/property/schemas/entity-schema.ts`
25
+ - [ ] Trocar import do schema: de `{antigo}` para `{novo}`
26
+ - [ ] Revisar overrides locais (podem ter campos que nao existem no novo CRM)
27
+ - [ ] Revisar computed fields (podem depender de campos do CRM antigo)
28
+ - [ ] Verificar: key, type, categories, ui.label corretos para cada campo
29
+
30
+ ### Banco de Dados
31
+ - [ ] DROP tabela Property: `pnpm db:drop` (CUIDADO: perde dados!)
32
+ - [ ] Recriar tabela com novos campos: `pnpm db:create`
33
+ - [ ] Executar generated-columns.sql (FTS, PostGIS)
34
+ - [ ] Sincronizar Prisma: `npx prisma db pull`
35
+ - [ ] Patch relations: `pnpm db:patch-relations`
36
+ - [ ] Gerar client: `npx prisma generate`
37
+ - [ ] Verificar: `SELECT column_name FROM information_schema.columns WHERE table_name='Property'`
38
+
39
+ ### API
40
+ - [ ] Reiniciar API (Prisma Client e cacheado!)
41
+ - [ ] Verificar: API inicia sem erros
42
+ - [ ] Configurar credenciais do novo CRM no .env
43
+ - [ ] Fazer primeiro sync de dados (upload)
44
+ - [ ] Verificar: dados chegando corretamente
45
+ - [ ] Verificar: 0 erros no sync
46
+
47
+ ---
48
+
49
+ ## Fase 2 — Frontend
50
+
51
+ ### Schema
52
+ - [ ] Regenerar schema: `cd apps/web && npx tsx scripts/generate-schema.ts`
53
+ - [ ] Verificar: campo aparece no schema.generated.json
54
+
55
+ ### Busca
56
+ - [ ] Revisar `search-list/config/schema.ts` — facets podem ter mudado
57
+ - [ ] Revisar componentes de filtro — campos podem nao existir mais
58
+ - [ ] Revisar ranges — valores min/max podem ser diferentes
59
+ - [ ] Testar: busca funcionando com novos campos
60
+
61
+ ### Cards
62
+ - [ ] Revisar `select-fields.config.ts` — campos do card
63
+ - [ ] Verificar: campos existem no novo schema
64
+ - [ ] Testar: cards renderizando corretamente
65
+
66
+ ### Pagina do Imovel
67
+ - [ ] Revisar `fields-lists.ts` (FIELD_LISTS_REGISTRY)
68
+ - [ ] Verificar: campos de atributos existem
69
+ - [ ] Verificar: labels corretos
70
+ - [ ] Testar: pagina renderizando corretamente
71
+
72
+ ### Navegacao
73
+ - [ ] Menus dinamicos se adaptam automaticamente (vem da API)
74
+ - [ ] Verificar: contagens atualizadas nos menus
75
+
76
+ ---
77
+
78
+ ## Fase 3 — Verificacao
79
+
80
+ - [ ] Rodar inspect-fields: `npx tsx src/modules/property/core/cli/inspect-fields.ts`
81
+ - [ ] Verificar: cobertura de campos (publicos, orfaos, ocultos)
82
+ - [ ] Acessar `/imovel/inspect/{referencia}` — tab "Exibicao dos campos"
83
+ - [ ] Verificar: nenhum campo orfao critico
84
+ - [ ] Testar: busca completa (filtros, facets, mapa)
85
+ - [ ] Testar: pagina do imovel completa
86
+ - [ ] Testar: cards na listagem
87
+ - [ ] `next build` sem erros
88
+
89
+ ---
90
+
91
+ ## Fase 4 — Automations
92
+
93
+ - [ ] Atualizar credenciais do novo CRM no .env do automations
94
+ - [ ] Atualizar pacote CRM no automations (se usado la)
95
+ - [ ] Testar: sync automatico funcionando
96
+ - [ ] Testar: leads chegando no novo CRM
@@ -0,0 +1,86 @@
1
+ # Pacotes Comerciais — Horizon Platform
2
+
3
+ > Definicao dos pacotes de venda do Horizon.
4
+
5
+ ---
6
+
7
+ ## Horizon Starter 2.0 — Pacote Base (R$ 6.200)
8
+
9
+ ### O que inclui
10
+
11
+ **14 paginas basicas:**
12
+ 1. Home Page
13
+ 2. Busca/Lista de Imoveis (com filtros avancados)
14
+ 3. Pagina do Imovel (detalhes completos)
15
+ 4. Perfil do Corretor
16
+ 5. Favoritos
17
+ 6. Imoveis Compartilhados
18
+ 7. Quem Somos
19
+ 8. Localizacao/Unidades
20
+ 9. Formulario de Contato
21
+ 10. Financiamento
22
+ 11. Anuncie seu Imovel
23
+ 12. Encomende seu Imovel
24
+ 13. Pagina de Agradecimento
25
+ 14. Termos de Uso + Politica de Privacidade
26
+
27
+ **Modulo imobiliario completo:**
28
+ - Integracao com 1 CRM (configuravel)
29
+ - Busca avancada com filtros dinamicos
30
+ - Mapa com geolocalizacao
31
+ - Favoritos e compartilhamento
32
+ - SEO otimizado (sitemap, meta tags)
33
+ - Full-text search em portugues
34
+
35
+ **Infraestrutura inclusa:**
36
+ - Deploy Vercel (web + api + automations)
37
+ - Banco PostgreSQL com PostGIS
38
+ - Envio de leads por email (Resend)
39
+ - Widget WhatsApp flutuante
40
+ - Google Analytics + GTM
41
+ - Multilingue (PT, EN, ES)
42
+ - Responsivo (mobile-first)
43
+
44
+ ---
45
+
46
+ ## Paginas Avancadas — Sob Medida (orcamento separado)
47
+
48
+ Paginas customizadas desenvolvidas especificamente para o cliente:
49
+ - Pagina de imoveis premium/luxo
50
+ - Blog integrado
51
+ - Area do cliente (portal)
52
+ - Pagina para investidores
53
+ - Pagina para estrangeiros
54
+ - Pagina de equipe/corretores
55
+ - Galeria Instagram integrada
56
+ - Pagina setor agro/rural
57
+ - FAQ interativo
58
+ - Depoimentos
59
+ - Qualquer pagina institucional customizada
60
+
61
+ **Referencia de estilo:** Ver paginas avancadas do projeto Guise (8 paginas de exemplo).
62
+
63
+ ---
64
+
65
+ ## Modulos Adicionais — Expansoes (orcamento separado)
66
+
67
+ | Modulo | Descricao | Status |
68
+ |---|---|---|
69
+ | Corretor (avancado) | Perfis completos, busca por corretor | Disponivel |
70
+ | Blog | Sistema de posts com MDX | Futuro |
71
+ | Condominio/Empreendimento | Integracao com CRM | Futuro |
72
+ | Instagram Advanced | Feed integrado com categorias | Futuro |
73
+ | Cidade e Bairros | Guia de bairros com dados | Futuro |
74
+
75
+ ---
76
+
77
+ ## Integracoes CRM — Disponiveis
78
+
79
+ | CRM | Pacote | Pronto |
80
+ |---|---|---|
81
+ | Jetimob | @horizon-integrations/jetimob-crm | Sim |
82
+ | SI9 | @horizon-integrations/si9-crm | Sim |
83
+ | Publisher | @horizon-integrations/publisher-crm | Sim |
84
+ | Arbo | @horizon-integrations/arbo-crm | Sim |
85
+ | Vista | (futuro) | Nao |
86
+ | Flexpro | (futuro) | Nao |
@@ -0,0 +1,52 @@
1
+ # Possibilidades de Venda — O que Oferecer ao Cliente
2
+
3
+ > Lista de servicos e expansoes que podem ser vendidos alem do pacote base.
4
+
5
+ ---
6
+
7
+ ## Expansoes de Paginas
8
+
9
+ | Pagina | Complexidade | Valor Sugerido | Exemplo |
10
+ |---|---|---|---|
11
+ | Pagina institucional simples | Baixa | R$ 500-800 | FAQ, Depoimentos |
12
+ | Pagina institucional avancada | Media | R$ 1.000-2.000 | Equipe, Sobre Nos customizado |
13
+ | Pagina de produto/servico | Media | R$ 1.500-2.500 | Imoveis Premium, Investidores |
14
+ | Portal do cliente | Alta | R$ 3.000-5.000 | Area do Cliente com subpaginas |
15
+ | Blog completo | Alta | R$ 2.000-4.000 | Posts, categorias, busca |
16
+ | Landing page campanha | Baixa | R$ 800-1.500 | Lancamento, promocao |
17
+
18
+ ---
19
+
20
+ ## Expansoes de Modulos
21
+
22
+ | Modulo | O que faz | Valor Sugerido |
23
+ |---|---|---|
24
+ | Corretor avancado | Perfis, busca, showcase | R$ 1.500-2.500 |
25
+ | Condominio | Empreendimentos com plantas | R$ 3.000-5.000 |
26
+ | Blog + MDX | Posts ricos com componentes | R$ 2.000-3.000 |
27
+ | Instagram Feed | Feed integrado, categorias | R$ 1.000-2.000 |
28
+ | Guia de Bairros | Mapas, dados, fotos | R$ 2.000-3.500 |
29
+
30
+ ---
31
+
32
+ ## Servicos Recorrentes
33
+
34
+ | Servico | Descricao | Valor Mensal |
35
+ |---|---|---|
36
+ | Manutencao | Updates, correcoess, ajustes | R$ 300-600/mes |
37
+ | SEO avancado | Otimizacao continua | R$ 500-1.000/mes |
38
+ | Conteudo | Paginas novas, blog posts | Sob demanda |
39
+ | Integracao CRM novo | Trocar/adicionar CRM | R$ 1.000-2.000 (unico) |
40
+
41
+ ---
42
+
43
+ ## Como Identificar Oportunidades
44
+
45
+ O agente UX pode analisar o site do cliente e identificar:
46
+ 1. **Paginas faltando** — ex: cliente nao tem FAQ, depoimentos
47
+ 2. **Modulos uteis** — ex: cliente tem corretores mas nao tem modulo broker avancado
48
+ 3. **Integracoes** — ex: cliente usa CRM que ainda nao tem conversor
49
+ 4. **Melhorias visuais** — ex: paginas basicas que podem ser "upadas" para avancadas
50
+ 5. **Performance** — ex: SEO que pode ser melhorado
51
+
52
+ Essas informacoes ficam em `/ai/client/ANOTACOES.md` e no Notion do cliente.
package/index.md ADDED
@@ -0,0 +1,54 @@
1
+ # Horizon Platform Docs — Website Dev Docs
2
+
3
+ > Documentacao inteligente da plataforma Horizon para agentes de IA.
4
+ > Versao: 2.3.0
5
+
6
+ ---
7
+
8
+ ## Agentes (instrucoes de comportamento)
9
+ - [AGENTE_FULLSTACK.md](./agents/AGENTE_FULLSTACK.md) — Desenvolvedor full stack completo: backend, frontend, banco, deploy
10
+ - [AGENTE_LAYOUT_DESIGNER.md](./agents/AGENTE_LAYOUT_DESIGNER.md) — Regras de UI/UX, tipografia, cores, secoes, componentes visuais
11
+ - [AGENTE_UX_CLIENTE.md](./agents/AGENTE_UX_CLIENTE.md) — Relacionamento com cliente, Notion, vendas, experiencia do usuario
12
+
13
+ ## Knowledge — Arquitetura Geral
14
+ - [ARQUITETURA_GERAL.md](./knowledge/ARQUITETURA_GERAL.md) — 5 partes: web, api, automacao, /ai/, /dev/
15
+ - [SISTEMA_MODULAR.md](./knowledge/SISTEMA_MODULAR.md) — Como funcionam modulos, como criar/instalar novos
16
+ - [SISTEMA_SCHEMAS.md](./knowledge/SISTEMA_SCHEMAS.md) — Domain models, 45 campos base, SSOT, conversores CRM
17
+
18
+ ## Knowledge — API e Backend
19
+ - [API_PROPERTY.md](./knowledge/API_PROPERTY.md) — Stack, arquitetura, endpoints da API
20
+ - [SEARCH_ENGINE_API.md](./knowledge/SEARCH_ENGINE_API.md) — Motor de busca, facets, pagination, cursor vs offset
21
+ - [BATCH_TOTALS_API.md](./knowledge/BATCH_TOTALS_API.md) — API batch totals, contagens dinamicas
22
+ - [SSOT_SPECIFICATION_V2.md](./knowledge/SSOT_SPECIFICATION_V2.md) — Spec SSOT v2.0, metadados hierarquicos
23
+ - [MODULE_CREATION_PATTERN.md](./knowledge/MODULE_CREATION_PATTERN.md) — Padrao de criacao de modulos backend + frontend
24
+
25
+ ## Knowledge — Frontend e UI
26
+ - [ARQUITETURA_MODULOS_WEB.md](./knowledge/ARQUITETURA_MODULOS_WEB.md) — Arquitetura de modulos frontend (core/features)
27
+ - [NAVEGACAO_DINAMICA.md](./knowledge/NAVEGACAO_DINAMICA.md) — Sistema de navegacao dinamica, menus, fetchers
28
+ - [UI_KIT_COMPLETO.md](./knowledge/UI_KIT_COMPLETO.md) — shadcn + extras Horizon + todos componentes
29
+ - [HOOKS_REGISTRY.md](./knowledge/HOOKS_REGISTRY.md) — Todos hooks (tema, responsive, scroll, animacao)
30
+ - [COMPONENTES_GLOBAIS_UI.md](./knowledge/COMPONENTES_GLOBAIS_UI.md) — Toast, modal, sheet, loading, etc.
31
+ - [CAPABILITIES.md](./knowledge/CAPABILITIES.md) — Contatos, redes sociais, WhatsApp, snippets, SEO, sitemap
32
+
33
+ ## Knowledge — Design e Paginas
34
+ - [DESIGN_AVANCADO.md](./knowledge/DESIGN_AVANCADO.md) — Como criar paginas e secoes custom, estilo de design, composicoes
35
+ - [DESIGN_SYSTEM_CATALOG.md](./knowledge/DESIGN_SYSTEM_CATALOG.md) — Catalogo de secoes base
36
+ - [PAGINAS_BASICAS.md](./knowledge/PAGINAS_BASICAS.md) — Pacote 14 paginas que todo site Horizon tem
37
+ - [DESIGN_TEMPLATES_CATALOG.md](./knowledge/DESIGN_TEMPLATES_CATALOG.md) — Catalogo de templates: paginas, secoes, blocos prontos
38
+
39
+ ## Knowledge — Dominio e Dados
40
+ - [DOMINIO_ENTIDADES.md](./knowledge/DOMINIO_ENTIDADES.md) — Fluxo de dados ponta a ponta
41
+ - [CRMS_INTEGRACOES.md](./knowledge/CRMS_INTEGRACOES.md) — Pacotes CRM, FICHA_TECNICA, normalizacao
42
+
43
+ ## Checklists
44
+ - [CRIAR_SITE_NOVO.md](./checklists/CRIAR_SITE_NOVO.md) — Template ate publicacao (tudo que trocar)
45
+ - [TROCAR_CRM.md](./checklists/TROCAR_CRM.md) — Migrar de um CRM para outro (25+ passos)
46
+ - [ADICIONAR_CAMPO.md](./checklists/ADICIONAR_CAMPO.md) — 13 arquivos que mudam ao adicionar campo
47
+ - [PUBLICAR_SITE.md](./checklists/PUBLICAR_SITE.md) — Vercel, dominio, DNS, SEO
48
+
49
+ ## Comercial
50
+ - [PACOTES_PAGINAS.md](./commercial/PACOTES_PAGINAS.md) — Basicas vs avancadas, o que vem incluso
51
+ - [POSSIBILIDADES_VENDA.md](./commercial/POSSIBILIDADES_VENDA.md) — Modulos, paginas, integracoes vendaveis
52
+
53
+ ## Modulos
54
+ - [property/MODULO_IMOBILIARIO.md](./modules/property/MODULO_IMOBILIARIO.md) — Modulo imobiliario completo