Synaplan
Open-source AI platform for companies: self-hosted AI agents, GDPR-compliant chatbot widget, RAG knowledge base, WhatsApp and Outlook AI, MCP, multi-model routing. Docker, Kubernetes or hosted in Germ
Manage clinic admin tasks, view clients, subscriptions, costs, and coupons
Translation pending
AI summary · website content
BusinessHTML · TypeScriptGitHub @nastaclinOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Painel administrativo pessoal do NastaDesk (SaaS de gestão de clínicas).
Página estática (index.html) que consome o backend Supabase do app principal.
Backend Supabase: projeto zrkadblxozddreiwruhv.
admin_conceder_cortesia) a quem está sem plano e remove acesso (admin_remover_acesso).A service_role NUNCA fica no front. Toda leitura de todas as clínicas/assinaturas
e toda ação administrativa passa pela Edge Function admin-api, que:
nastaclin_admins ou id/email do dono);service_role para ler os dados e chamar as RPCs admin.O front só tem a anon key e o JWT da sessão do admin. As RPCs
admin_conceder_cortesia / admin_remover_acesso têm execute apenas para
service_role (não para anon/authenticated), então não há como chamá-las
direto do navegador.
index.html # painel (estático, single-file)
supabase/functions/admin-api/index.ts # Edge Function admin (cópia versionada)
supabase/migrations/ # tabela admin_config (parâmetros de custos)
Cada ferramenta tem um modelo de cálculo, todos editáveis no painel:
| Ferramenta | Modelo | Base |
|---|---|---|
| Supabase | fixo (desativado) | plano Pro quando virar pago |
| Vercel | fixo (desativado) | plano Pro quando virar pago |
| Mercado Pago | % da receita | 4,98% por assinatura recebida |
| Servidor Evolution/WhatsApp | faixas por nº de clínicas | DigitalOcean, RAM cresce com a base |
| API Claude/Anthropic | uso real por clínica | custo calculado a partir dos tokens consumidos no mês (Haiku 4.5: US$1/1M entrada, US$5/1M saída), convertido para R$ |
Os parâmetros ficam em public.admin_config (chave custos) e são lidos/gravados
pela Edge Function. Ajuste os números pelo painel quando quiser.
O card API Claude/Anthropic não usa mais uma estimativa fixa por clínica. Ele mostra o gasto real: quantos tokens cada clínica consumiu no chatbot do WhatsApp no mês corrente e o custo correspondente em R$ e US$.
public.ia_uso (projeto NastaDesk), gravada pela
Edge Function whatsapp-webhook a cada chamada ao Claude. O registro é tolerante a
falhas — se a gravação falhar, o bot continua respondendo normalmente.admin-api agrega o uso do mês por clínica no bootstrap (campo uso_ia).admin-api em fontes gratuitas em
cascata (AwesomeAPI → open.er-api → Frankfurter, sem chave), com cache de 10 min,
e o painel atualiza a cada 10 min; se todas falharem, usa o câmbio manual de fallback.