Esta seção descreve o funcionamento do frontend (site público), explicando a função de cada pasta/arquivo e como o site se conecta ao backend. A estrutura abaixo foi atualizada conforme o print enviado (raiz do projeto) e os arquivos PHP do pacote do site.
📦 Estrutura de Pastas (Raiz do Projeto)
Pastas na raiz do projeto:
- AJAX
ajax/– Endpoints para requisições assíncronas consumidas pelas páginas (ex.: login, cadastro, salvar agendamento). - WEBHOOK
webhook/– Recebimento de callbacks de serviços externos (ex.: pagamentos/assinaturas). - API
api/– API do sistema (retornos JSON, integrações e consultas). - ASAAS
asaas/– Integração com Asaas (rotinas gerais). - ASAAS
asaas_contas/– Integração Asaas: contas (clientes/contas, vínculo). - ASAAS
asaas_planos/– Integração Asaas: planos/assinaturas (planos, recorrência). - ASSETS
fonts/– Fontes do frontend. - ASSETS
js/– Scripts do frontend (validações, máscaras, chamadas Ajax/API). - LOG
logs/– Logs do projeto (erros/retornos). Não expor publicamente. - APPS
apps/– Módulos auxiliares do projeto (miniapps/integrações). - CFG
config/– Configurações (ambiente, chaves, conexão, constantes). - ASSETS
css/– Estilos do site (layout/responsivo). - UPLOAD
uploads/– Uploads públicos (fotos/arquivos). Exigir validação no backend. - ASSETS
images/– Imagens do site (banners/ícones). - APP
app/– Estrutura de app/PWA (quando usada). - PUBLIC
public/– Conteúdo público adicional (assets/rotas estáticas). - PAG
pagamentos/– Fluxos e rotinas de pagamento (Pix/cartão, baixa/retorno). - TOOLS
tools/– Scripts utilitários (manutenção/diagnóstico/migrações). - CRON
cron/– Rotinas agendadas (lembretes, avisos, verificações).
📄 Páginas principais do frontend
index.php
Página inicial do sistema. Apresenta a interface de entrada com links para login, cadastro e visualização de serviços.
- Carrega arquivos como
cabecalho.phperodape.php - Layout responsivo com HTML/CSS e seções de conteúdo
home.php
Tela inicial após login (cliente/usuário, conforme regra do projeto).
- Exibe dados do cliente e atalhos
- Quando necessário, carrega dados via Ajax/API
cadastrar.php
Formulário de cadastro (cliente/usuário).
- Campos HTML5 + validação
- Envia dados para endpoints em
ajax/(padrão do BarberBot)
meus-agendamentos.php
Página onde o cliente pode visualizar seus agendamentos.
- Renderiza dados recebidos do backend
- Permite ações como cancelar/reagendar (dependendo das regras)
📑 Outras páginas do frontend (site público)
- agendamentos.php: fluxo/tela de agendamento (seleção, confirmação, etc.)
- servicos.php: listagem dos serviços oferecidos
- produtos.php: apresentação de produtos
- politica-play.php: termos de uso e política
- assinar.php / assinatura.php: início e detalhes de assinatura
- obrigado.php: página de sucesso (pós conversão/pagamento)
- barbearia.php, barber.php, corte-cabelo.php, mechas.php, protese.php: páginas de conteúdo/SEO (landings)
- bio.php: página de apresentação/bio
- contador-visitas.php: contador/registro de visitas
- diagnostico.php / meu-ip.php: utilitários (usar com cuidado em produção)
- security.php: rotinas de segurança
- funcoes_webp.php / gerar_webp.php: otimização de imagens (WebP)
- otimizador.php / seo_otimizador.php: otimizações e SEO
- sitemap.xml / sitemap-index.xml: sitemaps
- .htaccess: regras de rewrite/cache/segurança no Apache
🔌 Integração Frontend ⇄ Backend
- Ajax: ações de formulário chamam
ajax/e recebem retorno para atualizar a tela sem reload. - API: listagens/consultas (agenda/serviços/status) podem chamar
api/e receber JSON. - Pagamentos/Assinaturas: rotinas ficam em
pagamentos/e integrações externas retornam emwebhook/. - Segurança: validação real sempre no backend; no frontend apenas UX/validação básica.