Landing Page do FitLocus
A landing page do FitLocus é desenvolvida com Next.js e serve como o portal de entrada para novos usuários, apresentando a plataforma, seus recursos e planos de assinatura. Além da página institucional, também inclui o fluxo de cadastro e assinatura para novos usuários.Tecnologias Utilizadas
- Framework: Next.js 13+ (App Router)
- Linguagem: TypeScript
- Estilização: Tailwind CSS
- Componentes: Radix UI + Shadcn/UI
- Formulários: React Hook Form
- Validação: Zod
- Gerenciamento de Estado: React Context API
- Requisições HTTP: Axios
- Animações: Framer Motion
- Internacionalização: next-intl
Estrutura do Projeto
Fluxos Principais
Página Inicial
A página inicial apresenta a plataforma para visitantes não autenticados:- Hero Section: Apresentação principal com call-to-action
- Features: Recursos e benefícios da plataforma
- Pricing: Planos disponíveis para alunos e profissionais
- Testimonials: Depoimentos de usuários
- FAQ: Perguntas frequentes
- CTA: Call-to-action final para registro
Jornada do Profissional
Fluxo de cadastro e assinatura para personal trainers:- Seleção de Plano: Escolha entre os planos disponíveis (Iniciante, Basic, etc.)
- Cadastro: Formulário de registro com dados pessoais e profissionais
- Pagamento: Integração com AbacatePay para processamento do pagamento
- Boas-vindas: Confirmação e próximos passos
Jornada do Aluno
Fluxo de cadastro e assinatura para alunos:- Seleção de Plano: Escolha entre os planos disponíveis (Freemium, Premium, etc.)
- Cadastro: Formulário de registro com dados pessoais
- Pagamento: Integração com AbacatePay para processamento do pagamento (se plano pago)
- Boas-vindas: Confirmação e próximos passos
Dashboard
Área logada para usuários autenticados:- Alunos: Gerenciamento de alunos (apenas para profissionais)
- Treinos: Criação e gerenciamento de treinos
- Relatórios: Análises e métricas de desempenho
- Perfil: Gerenciamento de dados pessoais
- Configurações: Preferências e configurações da conta
Componentes de UI
A landing page utiliza uma biblioteca de componentes baseada em Radix UI e Shadcn/UI:Integração com API
A comunicação com o backend é realizada através de serviços que utilizam Axios:Autenticação
A landing page implementa um sistema de autenticação completo:Proteção de Rotas
A landing page utiliza middleware do Next.js para proteger rotas que requerem autenticação:Design System
A landing page segue o design system do FitLocus com as seguintes características:- Cores: Paleta baseada em #202020 (fundo), #B4ED00 (acento) e #F9F9F9 (texto)
- Tipografia: Hanken Grotesk como fonte principal e SUPERINE para títulos
- Espaçamento: Sistema de grid baseado em Tailwind CSS
- Componentes: Biblioteca de componentes consistente e acessível
Responsividade
A landing page é totalmente responsiva, adaptando-se a diferentes tamanhos de tela:- Mobile: Layout otimizado para dispositivos móveis (< 640px)
- Tablet: Layout adaptado para tablets (640px - 1024px)
- Desktop: Layout completo para desktops (> 1024px)
SEO
A landing page implementa práticas de SEO para melhorar a visibilidade nos motores de busca:- Metadata: Títulos, descrições e tags Open Graph
- Sitemap: Geração automática de sitemap.xml
- Structured Data: Dados estruturados para rich snippets
- Performance: Otimização de performance para melhor ranking
Ambiente de Desenvolvimento
Para configurar o ambiente de desenvolvimento:Implantação
A landing page é implantada na Vercel com integração contínua:- Desenvolvimento: Ambiente de desenvolvimento para testes
- Staging: Ambiente de homologação para validação
- Produção: Ambiente de produção para usuários finais