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/