Synaplan
开源 AI 软件平台,面向企业:自托管 AI 代理,符合 GDPR 的聊天机器人小部件,RAG 知识库,WhatsApp 与 Outlook AI,MCP,多模型路由。支持 Docker、Kubernetes 或在 Germ 托管。
AI 翻译
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
O norte do seu projeto. Seu cliente explica o que quer sozinho. Você só projeta. SaaS para arquitetos e designers de interiores: briefing visual, proposta, contrato, aprovações de projeto e acompanhamento de obra, com a marca do escritório. Status: Fase 1 em andamento. Prontos: login, configuração inicial, formulário público, contatos, clientes, briefing, proposta, contrato e projeto (etapas e aprovações). As telas ainda não feitas mostram a lista do que vão ter.查看完整 README ↗
O norte do seu projeto. Seu cliente explica o que quer sozinho. Você só projeta.
SaaS para arquitetos e designers de interiores: briefing visual, proposta, contrato, aprovações de projeto e acompanhamento de obra, com a marca do escritório.
Status: Fase 1 em andamento. Prontos: login, configuração inicial, formulário público, contatos, clientes, briefing, proposta, contrato e projeto (etapas e aprovações). As telas ainda não feitas mostram a lista do que vão ter.
nortearq) no VS Code: Arquivo → Abrir pasta.Ctrl + ') e instale as dependências (só na primeira vez):
npm install
npm run dev
O site roda sem banco de dados. Para ligar o Supabase, veja a seção abaixo.
| Área | Endereço |
|---|---|
| Landing page | http://localhost:3000 |
| Preços | http://localhost:3000/precos |
| Login / Cadastro | http://localhost:3000/entrar · /cadastro · /recuperar-senha |
| Configuração inicial | http://localhost:3000/app/onboarding (aparece sozinha no 1º acesso) |
| Sistema do arquiteto | http://localhost:3000/app |
| Formulário público do escritório | http://localhost:3000/e/studio-ana |
| Briefing do cliente (exemplo, sem banco) | http://localhost:3000/c/exemplo/briefing |
| Briefings / Perfil do Cliente / Editor | http://localhost:3000/app/briefings · /app/briefings/editor |
| Proposta do cliente (exemplo, sem banco) | http://localhost:3000/c/exemplo/proposta |
| Portal do cliente | http://localhost:3000/portal |
app/
├── (site)/ → SITE DE VENDAS (landing, preços)
├── (auth)/ → entrar, cadastro, recuperar-senha
├── app/ → SISTEMA DO ARQUITETO (/app)
│ ├── contatos/ 01 · pedidos de orçamento
│ ├── clientes/ 00 · lista e ficha do cliente
│ ├── propostas/ 01
│ ├── contratos/ 01
│ ├── briefings/ 02 · respostas + editor de briefing
│ ├── projetos/ 03 · etapas, arquivos, aprovações
│ ├── obras/ 04 · visitas
│ ├── configuracoes/ 00 · marca, serviços, plano
│ └── onboarding/ 00 · assistente pós-cadastro
├── e/[escritorio]/ → formulário público do escritório (01)
├── c/[token]/ → LINKS DO CLIENTE SEM LOGIN (briefing, proposta, contrato)
└── portal/ → PORTAL DO CLIENTE COM LOGIN
components/ → componentes reutilizáveis
lib/
├── modulos.ts → catálogo de módulos e planos (fonte única)
├── navegacao.ts → menu do sistema
└── supabase/ → conexão com o Supabase
supabase/migrations/ → estrutura do banco de dados (SQL)
supabase/migrations/0001_schema_inicial.sql,
0002_lista_espera.sql (lista de espera do site), 0003_cadastro_e_onboarding.sql (cadastro,
configuração inicial e logo) 0004_formulario_e_contatos.sql (formulário público e contatos), 0005_clientes_e_links.sql
(clientes e links do cliente), 0006_briefing.sql (briefing, quiz de estilo e fotos),
0007_propostas.sql (propostas, versões e resposta do cliente), 0008_contratos.sql (contrato com
aceite eletrônico, projeto e pagamentos), 0009_ajuste_link_proposta.sql, 0010_projetos.sql
(etapas, arquivos com versões e aprovações do cliente) 0011_deslocamento.sql (deslocamento das visitas)
e 0012_parcelamento.sql (parcelamento escolhido pelo cliente)..env.example para .env.local e preencha a URL e a chave (Project Settings → API).SUPABASE_SECRET_KEY
(chave secreta, só o servidor usa) e RESEND_API_KEY (veja "Avisos por e-mail").npm run dev.O arquiteto recebe e-mail quando chega um pedido de orçamento, quando um cliente envia o briefing e
quando responde a proposta; o arquiteto e o cliente recebem e-mail quando o contrato é assinado
(lib/avisos.ts, envio pelo Resend em lib/email.ts).
.env.local: RESEND_API_KEY=... e SUPABASE_SECRET_KEY=... (para descobrir o e-mail do arquiteto).[email protected] só entrega no e-mail da sua conta Resend. Para
lançar, verifique o domínio (ex.: nortearq.com.br) no Resend e troque EMAIL_REMETENTE.Sem a chave, nada quebra: o aviso só aparece no terminal.
/#lista-espera). No lançamento, troque
PRE_LANCAMENTO para false em lib/site.ts e os botões passam a levar ao cadastro.lista_espera (Supabase → Table Editor). O site só consegue inserir;
ler e exportar (CSV) é pelo painel. Origem das visitas: parâmetros utm_source, utm_medium e
utm_campaign do link..env.local, em desenvolvimento o formulário mostra sucesso e só registra no terminal; em
produção, ele avisa que não conseguiu salvar.skills/ (video-to-website + frontend-design):
components/site/MotorAnimacao.tsx (Lenis + GSAP) e components/site/PlantaBaixa.tsx (cena central,
que será trocada pelo vídeo).Variáveis (no .env.local e na Vercel → Settings → Environment Variables):
| Variável | O que é |
|---|---|
ASAAS_API_KEY | Chave da API do Asaas (Minha conta → Integrações) |
ASAAS_AMBIENTE | sandbox para testes, producao para cobrar de verdade |
ASAAS_WEBHOOK_TOKEN | Senha que o Asaas manda nos avisos de pagamento (a mesma cadastrada no webhook) |
CRON_SECRET | Senha do lembrete diário do fim do teste (vercel.json) |
Webhook no Asaas: https://SEU-SITE/api/asaas/webhook, eventos de cobrança, com o mesmo ASAAS_WEBHOOK_TOKEN.
app/globals.css (cores provisórias em :root)lucide-react · Validação: zod/app e /portal (proxy.ts)/e/[escritorio] → tabela contatos + filtro de compatibilidade (tela Contatos)/c/[token] + botão "enviar no WhatsApp"estilos/padrao/