Uma Single Page Application moderna e responsiva desenvolvida para uma barbearia premium, oferecendo uma experiência elegante e sofisticada aos usuários.
- Design Moderno e Elegante: Interface clean com paleta de cores inspirada em tons de âmbar, preto e cinza
- Tema Dark/Light: Alternância entre temas com persistência em localStorage
- Totalmente Responsivo: Adaptado para dispositivos móveis, tablets e desktops
- Animações Suaves: Transições e micro-interações usando Framer Motion
- Navegação Intuitiva: Menu fixo com scroll suave entre seções
- Integração WhatsApp: Botão flutuante para agendamento direto
- Google Maps: Mapa interativo com localização da barbearia
- React 19.1.0 - Biblioteca JavaScript para construção de interfaces
- Vite 6.3.5 - Build tool e dev server ultrarrápido
- Tailwind CSS - Framework CSS utility-first
- Framer Motion - Biblioteca de animações para React
- Lucide React - Ícones modernos e customizáveis
- Google Maps API - Integração de mapas
barbearia-spa/
├── public/
├── src/
│ ├── assets/ # Imagens e recursos estáticos
│ ├── components/ # Componentes reutilizáveis
│ │ ├── ui/ # Componentes UI do shadcn/ui
│ │ ├── Header.jsx
│ │ ├── Footer.jsx
│ │ ├── ThemeToggle.jsx
│ │ ├── ServiceCard.jsx
│ │ ├── ReviewCard.jsx
│ │ └── WhatsAppButton.jsx
│ ├── context/ # Contextos React
│ │ └── ThemeContext.jsx
│ ├── hooks/ # Hooks customizados
│ │ └── useTheme.js
│ ├── pages/ # Seções principais
│ │ ├── Hero.jsx
│ │ ├── Services.jsx
│ │ ├── Reviews.jsx
│ │ ├── About.jsx
│ │ └── Location.jsx
│ ├── utils/ # Funções utilitárias
│ ├── App.css # Estilos globais e tema
│ ├── App.jsx # Componente principal
│ └── main.jsx # Ponto de entrada
├── index.html
├── package.json
└── vite.config.js
- Título principal com gradiente
- Subtítulo descritivo
- Botões de call-to-action (Agendar Horário / Ver Serviços)
- Estatísticas da barbearia (Anos de experiência, Clientes, Avaliação)
- Animações de entrada suaves
- Cards elegantes para cada serviço
- Informações de preço e duração
- Botões de agendamento via WhatsApp
- Efeitos hover e animações
Serviços Oferecidos:
- Corte Masculino - R$ 50,00 (45 min)
- Barba - R$ 35,00 (30 min)
- Corte + Barba - R$ 75,00 (1h 15min)
- Pigmentação - R$ 40,00 (40 min)
- Carrossel automático de avaliações
- Navegação manual com botões
- Indicadores de posição
- Avaliações com estrelas, nome do cliente e comentário
- História e propósito da barbearia
- Diferenciais competitivos
- Cards com ícones destacando:
- Profissionais Qualificados
- Atendimento Personalizado
- Pontualidade
- Produtos Premium
- Endereço completo
- Horário de funcionamento
- Mapa interativo do Google Maps
- Botão para abrir no Google Maps
- Horário de funcionamento
- Endereço resumido
- Contato telefônico
- Links para redes sociais (Instagram, Facebook)
- Copyright
- Node.js (versão 18 ou superior)
- pnpm, npm ou yarn
- Clone o repositório ou navegue até a pasta do projeto:
cd barbearia-spa- Instale as dependências:
pnpm install
# ou
npm install
# ou
yarn installpnpm run dev
# ou
npm run dev
# ou
yarn devA aplicação estará disponível em http://localhost:5173/
pnpm run build
# ou
npm run build
# ou
yarn buildOs arquivos otimizados serão gerados na pasta dist/
pnpm run preview
# ou
npm run preview
# ou
yarn previewEdite o arquivo src/App.css para modificar as variáveis CSS do tema:
:root {
--background: oklch(0.98 0.005 85);
--foreground: oklch(0.15 0.01 85);
/* ... outras variáveis */
}
.dark {
--background: oklch(0.12 0.01 85);
--foreground: oklch(0.95 0.005 85);
/* ... outras variáveis */
}Edite os seguintes arquivos:
- WhatsApp:
src/components/WhatsAppButton.jsxesrc/components/ServiceCard.jsx - Endereço:
src/pages/Location.jsxesrc/components/Footer.jsx - Telefone:
src/components/Footer.jsx
Edite o array services em src/pages/Services.jsx:
const services = [
{
name: 'Nome do Serviço',
description: 'Descrição do serviço',
price: 'R$ XX,XX',
duration: 'XX min',
icon: IconeDoLucide,
},
// ...
];Edite o array reviews em src/pages/Reviews.jsx:
const reviews = [
{
name: 'Nome do Cliente',
rating: 5,
comment: 'Comentário do cliente',
date: 'Data',
},
// ...
];-
Vercel (Recomendado)
npm install -g vercel vercel
-
Netlify
- Conecte o repositório no painel da Netlify
- Configure o build command:
pnpm run build - Configure o publish directory:
dist
-
GitHub Pages
- Configure o
basenovite.config.js - Execute
pnpm run build - Faça deploy da pasta
dist
- Configure o
A aplicação é totalmente responsiva e otimizada para:
- Mobile: 320px - 767px
- Tablet: 768px - 1023px
- Desktop: 1024px+
- Labels ARIA em botões interativos
- Contraste adequado entre texto e fundo
- Navegação por teclado suportada
- Semântica HTML apropriada
Este projeto foi desenvolvido como uma aplicação de demonstração.
Sugestões e melhorias são bem-vindas!
Para dúvidas ou suporte, entre em contato através do WhatsApp: (11) 98765-4321
Desenvolvido com ❤️ usando React + Vite + Tailwind CSS