Skip to main content

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:
  1. Hero Section: Apresentação principal com call-to-action
  2. Features: Recursos e benefícios da plataforma
  3. Pricing: Planos disponíveis para alunos e profissionais
  4. Testimonials: Depoimentos de usuários
  5. FAQ: Perguntas frequentes
  6. CTA: Call-to-action final para registro

Jornada do Profissional

Fluxo de cadastro e assinatura para personal trainers:
  1. Seleção de Plano: Escolha entre os planos disponíveis (Iniciante, Basic, etc.)
  2. Cadastro: Formulário de registro com dados pessoais e profissionais
  3. Pagamento: Integração com AbacatePay para processamento do pagamento
  4. Boas-vindas: Confirmação e próximos passos

Jornada do Aluno

Fluxo de cadastro e assinatura para alunos:
  1. Seleção de Plano: Escolha entre os planos disponíveis (Freemium, Premium, etc.)
  2. Cadastro: Formulário de registro com dados pessoais
  3. Pagamento: Integração com AbacatePay para processamento do pagamento (se plano pago)
  4. Boas-vindas: Confirmação e próximos passos

Dashboard

Área logada para usuários autenticados:
  1. Alunos: Gerenciamento de alunos (apenas para profissionais)
  2. Treinos: Criação e gerenciamento de treinos
  3. Relatórios: Análises e métricas de desempenho
  4. Perfil: Gerenciamento de dados pessoais
  5. 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
Para mais detalhes sobre o design system, consulte a documentação de design.

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:
  1. Desenvolvimento: Ambiente de desenvolvimento para testes
  2. Staging: Ambiente de homologação para validação
  3. Produção: Ambiente de produção para usuários finais