Ir ao conteúdo principal
2026

Booking page for small studios

Next.js
Supabase
PostgreSQL
Row Level Security
Stripe
Mercado Pago
Tailwind CSS
TypeScript

Descrição

Uma página de agendamento que o salão manda por link, e um painel atrás dela. Quem visita escolhe o serviço, o dia e o horário sem criar conta. Demo no ar, dá para marcar sem entrar.

Funcionalidades

  • Página pública por negócio em /p/slug, com serviços separados por categoria e agendamento em quatro passos
  • Horário de funcionamento por dia da semana, feriados e fechamento temporário, tudo refletido nos horários oferecidos
  • Painel de serviços, preço, duração, disponibilidade e cor da marca
  • Configuração de pagamento por negócio, com Stripe e Mercado Pago
  • Row Level Security por perfil: cada negócio só lê os próprios agendamentos

Desafios

  • Transformar horário de funcionamento, duração do serviço e agendamentos existentes numa lista de horários realmente livres
  • Deixar um desconhecido marcar sem conta, mantendo o dado do negócio fechado
  • Dois meios de pagamento com cadastros diferentes atrás de uma tela só de configuração

Aprendizados

  • Que o cálculo do horário livre é o produto inteiro, e o resto é formulário em volta
  • Que página pública precisa funcionar para quem chega de um link na bio, sem contexto nenhum
  • Quanto de um produto de agendamento é conta de calendário, e não interface