BarberFlow é um sistema profissional para gerenciamento de barbearias, desenvolvido para oferecer uma experiência moderna, intuitiva e extremamente rápida.
O objetivo do projeto é atender desde barbeiros autônomos até barbearias com múltiplos profissionais, oferecendo controle completo sobre agendamentos, atendimento, financeiro e indicadores de desempenho.
O sistema foi projetado para evoluir futuramente para uma plataforma SaaS (Software as a Service), mantendo uma arquitetura organizada, escalável e preparada para crescimento.
Você pode acessar o ambiente de testes oficial (sempre atualizado com a branch main) através do link abaixo:
- Acesso Público / Dashboard: https://barberflow-production-4eb7.up.railway.app/
- E-mail de Acesso (Admin):
admin@barberflow.com - Senha:
password
- Simplicidade de uso
- Alto desempenho
- Interface moderna
- Arquitetura escalável
- Fácil instalação
- Fácil manutenção
- Código limpo
- Segurança
- Preparado para SaaS
- Design moderno, limpo e elegante
- Modo Claro e Modo Escuro (Dark Mode) nativos com alternância suave
- Salvamento automático de preferência de tema via LocalStorage
- Total responsividade para Mobile e Desktop
Página pública e responsiva (/) onde o cliente pode:
- Escolher o serviço e barbeiro
- Escolher Data e Hora baseado na disponibilidade em tempo real
- Acompanhar a Fila Ao Vivo (quantas pessoas já agendadas na frente)
- Verificação Anti-Bot embutida (anti-spam)
- Confirmação automática
- Cancelamento automático: Clientes que agendam e não comparecem têm seu status alterado para "cancelado" após 1 hora de tolerância.
- Cadastro de barbeiros
- Foto
- Contato
- Status Ativo/Inativo
- Livre/Ocupado
- Habilitar ou desabilitar agendamento
- Controle de horários
- Controle de folgas
- Criação de novos usuários com níveis de acesso.
- Nível Administrador: Acesso total ao sistema, configurações e relatórios.
- Nível Funcionário: Acesso restrito à própria agenda (baseado no vínculo com um perfil de barbeiro) e à adição de receitas e despesas.
- Funcionários são impedidos de excluir (deletar) qualquer registro do sistema (como agendamentos ou itens do caixa).
- Cadastro de serviços
- Valor
- Tempo de duração
- Serviço ativo/inativo
- Serviço de Cortesia/Fidelidade: Invisível para clientes e funcionários. Acessível apenas para administradores criarem encaixes promocionais (valor zerado).
- Workflow configurado com GitHub Actions (
.github/workflows/deploy-demo.yml). - Deploy automatizado e sem downtime via AWS Systems Manager (SSM) e S3.
- Acionado automaticamente a cada push na branch principal para ambientes de Demonstração.
Indicadores em tempo real:
- Agendamentos do dia
- Barbeiros livres
- Barbeiros ocupados
- Clientes aguardando
- Próximos atendimentos
- Serviços mais vendidos
- Faturamento diário
- Faturamento mensal
- Remarcação Ágil: Janela interativa para reagendar clientes diretamente da fila, atualizando os dados em tempo real sem recarregamentos.
Atualização automática em tempo real.
Exibe:
- Vídeo do YouTube em exibição simultânea (configurável pelo Dashboard)
- Clientes em atendimento atual
- Próximos 3 clientes da fila
- Nome, Horário e Serviço
Pode ser utilizada em televisores da recepção.
- Entradas
- Saídas
- Fluxo de caixa
- Receitas
- Despesas
- Formas de Pagamento (Pix, Crédito, Débito, Espécie)
- Fechamento diário
- Fechamento mensal
A gerência tem total controle sobre os horários da barbearia:
- Bloqueios parciais (ex: horário de almoço)
- Bloqueios totais (ex: feriados e dias de folga)
- Bloqueio por equipe inteira ou individual para cada barbeiro
- Ocultação automática dos horários na página pública de agendamento
O módulo de relatórios é uma central de inteligência do negócio:
- Agendamentos: Filtre por data, barbeiro e status (Concluído, Cancelado, Não Compareceu).
- Financeiro: Acompanhe o fluxo de caixa, totalizando entradas (receitas) e saídas (despesas).
- Desempenho de Serviços: Ranking dos serviços mais populares e que mais geram faturamento.
- Desempenho de Barbeiros: Ranking de quem mais atende e mais contribui financeiramente.
- Ordenação Inteligente: Dados ordenados com precisão por data, hora e ordem de registro (ID) mais recente.
- Exportação Universal: Exporte todos os relatórios nativamente em formato PDF ou Excel (.xlsx).
- Nome da Barbearia
- Logo
- Telefone
- Endereço
- SMTP
- Horário de funcionamento
- Dias fechados
Assistente de instalação contendo:
- Configuração MySQL
- Configuração SMTP
- Dados da empresa
- Criação do administrador
- Execução automática das migrations
- Execução automática dos seeders
O cliente não precisa criar cadastro.
Para realizar um agendamento basta informar:
- Nome
- Serviço
- Barbeiro
- Horário
Antes da confirmação será exibida uma operação matemática simples.
Exemplo:
7 + 5 = ?
Somente após responder corretamente o botão Agendar será liberado.
Após confirmar:
- grava no banco
- atualiza a fila
- envia e-mail ao barbeiro
- envia confirmação ao cliente
- Laravel 13
- PHP 8.3+
- MySQL 8
- Eloquent ORM
- Bootstrap 5.3
- Blade
- JavaScript ES6
- AJAX
- jQuery
- Bootstrap Icons
- Font Awesome
- SweetAlert2
- DataTables
- Select2
- FullCalendar
- Axios
O projeto segue:
- MVC
- SOLID
- PSR-12
- Repository Pattern
- Service Layer
- Form Requests
- Blade Components
Os Controllers possuem apenas responsabilidade de receber requisições.
Toda regra de negócio é implementada na camada de Services.
barberflow/
app/
├── Enums
├── Helpers
├── Http
│ ├── Controllers
│ ├── Requests
├── Jobs
├── Mail
├── Models
├── Notifications
├── Observers
├── Policies
├── Repositories
├── Services
└── Traits
bootstrap/
config/
database/
docs/
public/
resources/
├── css
├── js
└── views
routes/
storage/
tests/
artisan
composer.json
package.json
vite.config.js
Principais tabelas:
- users
- settings
- barbers
- services
- appointments
- financial_transactions
- business_hours
- blocked_times
git clone https://github.com/SEU-USUARIO/barberflow.gitcd barberflowcomposer installnpm installLinux/Mac
cp .env.example .envWindows
copy .env.example .envEdite o arquivo:
.env
Configure:
DB_DATABASE=
DB_USERNAME=
DB_PASSWORD=
php artisan key:generatephp artisan migratephp artisan db:seedModo desenvolvimento
npm run devProdução
npm run buildLaragon
http://barberflow.test
Laravel
php artisan serveConfigure no .env:
MAIL_MAILER=smtp
MAIL_HOST=smtp.exemplo.com
MAIL_PORT=587
MAIL_USERNAME=usuario@empresa.com
MAIL_PASSWORD=
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=noreply@empresa.com
MAIL_FROM_NAME="${APP_NAME}"Nunca envie credenciais reais para o GitHub.
Nunca versionar:
.env
node_modules/
vendor/
public/build/
storage/logs/
storage/framework/*
bootstrap/cache/*
Jamais armazenar:
- Senhas
- Tokens
- Chaves PIX
- API Keys
- SMTP
- Cookies
- Sessões
Utilize sempre variáveis de ambiente.
Crie a pasta:
docs/screenshots/
Exemplo:
- Dashboard
- Agenda
- Serviços
- Barbeiros
- Financeiro
- Relatórios
- Página Pública
- WhatsApp API
- Confirmação automática
- Cancelamento por link
- Multiempresa
- Multiunidade
- SaaS
- Assinaturas
- Pagamentos
- API REST
- Aplicativo Mobile
Utilizar Conventional Commits.
feat:
fix:
docs:
refactor:
style:
perf:
build:
test:
chore:
Exemplo:
feat: criar módulo de agendamentos
fix: corrigir conflito de horários
docs: atualizar README
refactor: reorganizar Services
Toda contribuição deverá seguir:
- PSR-12
- SOLID
- Clean Code
- Repository Pattern
- Service Pattern
Antes de cada commit execute:
php artisan optimize:clear
php artisan config:clear
php artisan route:clear
php artisan cache:clear
php artisan view:clear
npm run buildEste projeto possui Licença Comercial/Privada.
Todos os direitos reservados.
A reprodução total ou parcial sem autorização é proibida.
Sistema desenvolvido por Rafael Maciel.
Obrigado por utilizar o BarberFlow.
Nosso objetivo é entregar uma solução moderna, rápida, segura e preparada para o crescimento da sua barbearia.










