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
Gestão e agendamento para barbearias
Translation pending
BusinessGitHub @juninhocienciacomputacao-sysOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Repository information has not been collected yet.
No updates detected yet. GitHub releases will appear here.
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 ↗Gestão e agendamento para barbearias. É multi-barbearia (vários donos no mesmo sistema), multi-idioma (português, inglês, espanhol) e multi-moeda.
Protótipo navegável com todas as ideias: https://claude.ai/artifact/EgaCHKSeXPAFtcCbBG3Tj3
npm install
npm run dev # http://localhost:3000
npm test # regras de negócio (agenda, planos, comissões, mensagens, fusos)
npm run db:check # valida o banco num Postgres em memória e testa segurança e agenda
Sem configurar nada, o app abre com a barbearia de demonstração Dom Bigode:
/b/dom-bigode é o app do cliente para agendar./painel/dom-bigode é o painel do dono, com faturamento, planos vencendo, agenda do dia e desempenho por barbeiro.Com o Supabase ligado, /entrar faz o login pelo WhatsApp (código), /nova-barbearia cadastra a barbearia do dono e o painel só abre para a equipe. Passo a passo em docs/colocar-no-ar.md.
Para usar o banco de verdade, crie um projeto no Supabase, aplique supabase/migrations (e supabase/seed.sql, se quiser dados de exemplo) e copie .env.example para .env.local com a URL e a chave pública do projeto.
| Pasta | O que tem |
|---|---|
src/core | Regras de negócio puras, sem banco e sem tela, todas testadas: horários livres, encaixes de pico, planos (vencimento e reativação ao pagar), comissões configuráveis, sugestão de reagendamento, mensagens automáticas, fusos e moedas. |
src/data | Acesso a dados. Uma interface (Repo) com duas versões: demonstração em memória e Supabase. |
src/app | Telas (Next.js). |
src/i18n | Textos em PT/EN/ES. |
supabase/migrations | Banco: tabelas, regras de segurança por barbearia e funções de agendamento. |
shop_id).book_appointment, que confere serviço, profissional, horário e plano.src/core/access.ts e na migração 0012_team_access.sql.Tudo é escolhido pelo dono. A parte difícil é o atendimento de plano, e o dono escolhe uma de quatro regras:
Também dá para configurar: aluguel de cadeira, exceções por serviço, produtos, bônus por venda de plano, taxa de cartão, insumos, metas por degrau e garantia mínima. O código está em src/core/commission.ts.
src/core/plan-rules.ts e no banco em 0014_plan_rules.sql (a função book_appointment confere tudo).Painel (/painel/[slug]): Painel, Agenda (com fila de encaixe), Clientes, Planos, Financeiro, Comissões, Equipe, Serviços, Mensagens, Shopping, Recursos e Acessos (só o dono). Também a TV da recepção (/tv/[slug], com QR code) e o app do cliente (/b/[slug]: início, agendar, shopping, meu plano, corte ideal e projeto de visual).
src/modules/client-app/payments.ts; falta a rota do webhook e a conta no provedor.