Synaplan
開源 AI 平台,供企業使用:自行託管的 AI 代理、符合 GDPR 的聊天機器人小工具、RAG 知識庫、WhatsApp 與 Outlook AI、MCP、多模型路由。Docker、Kubernetes 或託管於 Germ
AI 翻譯
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證正在載入完整 README。 以下為已儲存的摘錄。
Ferramenta de orçamento (venda e manutenção de extintores) da Extintores Globo — um único arquivo HTML estático, sem backend, sem build. Opção 1 — pelo site (mais fácil, sem instalar nada):檢視完整 README ↗
Ferramenta de orçamento (venda e manutenção de extintores) da Extintores Globo — um único arquivo HTML estático, sem backend, sem build.
Opção 1 — pelo site (mais fácil, sem instalar nada):
seu-projeto.vercel.app.Opção 2 — pelo terminal (Vercel CLI):
npm i -g vercel
cd orcamento-globo
vercel # segue as perguntas (primeira vez faz login)
vercel --prod # publica em produção
Depois do deploy, em Project → Settings → Domains dá pra apontar um domínio seu (ex: orcamento.extintoresglobo.com.br) — o Vercel mostra o registro DNS (CNAME/A) para configurar no seu provedor.
Clientes ficam no Firestore (Firebase) quando ele está configurado — aí você e seu sócio veem a mesma lista, de qualquer aparelho. Sem Firebase configurado, os clientes ficam só no navegador daquele computador.
Tabela de preços e dados da empresa ficam sempre no localStorage do navegador (são configurações de cada máquina).
</>).firebaseConfig inteiro.A configuração fica salva no navegador. Para nascer já conectado em qualquer aparelho, dá para colar o mesmo objeto direto no index.html, na constante FIREBASE_CONFIG_PADRAO.
O
firebaseConfigda web é público por natureza (vai no HTML de qualquer site Firebase) — quem protege os dados são as regras do Firestore, abaixo.
Em Firestore Database → Regras. Enquanto for só vocês dois, o mínimo aceitável é limitar por data de expiração:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /clientes/{doc} {
allow read, write: if request.time < timestamp.date(2027, 1, 1);
}
}
}
Isso deixa qualquer pessoa com o link ler e gravar até essa data. Para valer de verdade, o certo é ativar Authentication (login por e-mail/senha para você e seu sócio) e trocar a regra por if request.auth != null — dá para fazer isso depois, sem mexer no resto.
Cada cliente guarda a data da última manutenção e a periodicidade (12 meses por padrão). Ao abrir o app, se algum cliente estiver vencido ou vencendo nos próximos 30 dias (ajustável em Empresa), aparece um pop-up com a lista. O botão "Renovei" grava a data de hoje — ou seja, um cliente de setembro volta a aparecer em setembro do ano seguinte.
O pop-up aparece no máximo 1x por dia; "Lembrar daqui a 7 dias" adia.
index.html — a ferramenta inteira (HTML + CSS + JS em um arquivo só)logo-globo.jpg — logo padrão da proposta (trocável pela aba Empresa)vercel.json — configuração mínima do Vercel