Aplicação web desenvolvida em React para gerenciar e visualizar eventos de tecnologia. O projeto permite criar, listar e paginar eventos com diferentes temas como Front-end, Design e Marketing.
A aplicação oferece as seguintes funcionalidades:
- Listagem de eventos: Visualização de eventos em cards com imagem, nome, data e tema
- Cadastro de eventos: Formulário para criação de novos eventos
- Paginação: Navegação entre páginas de eventos
- Infinite scroll: Carregamento progressivo de mais eventos
- Validação de formulários: Validação de dados com Zod
- Temas categorizados: Organização por categorias (Front-end, Design, Marketing)
- Interface responsiva: Design adaptável usando Material-UI
As principais tecnologias e bibliotecas utilizadas no projeto:
React 19
: Biblioteca principal para construção da interfaceVite
: Build tool e servidor de desenvolvimento rápidoMaterial-UI (MUI)
: Biblioteca de componentes para ReactReact Hook Form
: Gerenciamento de formulários com alta performanceZod
: Validação e parsing de schemas TypeScript-firstTanStack Query
: Gerenciamento de estado para requisições HTTPJSON Server
: API mock para desenvolvimentoESLint
: Linting e padronização de código
- Navegação entre páginas com botões "Anterior" e "Próxima"
- Controle de estado da página atual
- Desabilitação inteligente de botões quando necessário
- Carregamento progressivo de eventos
- Botão "Carregar mais" para buscar próximas páginas
- Otimização de performance com cache inteligente
- Validação em tempo real com Zod
- Mensagens de erro personalizadas
- Campos obrigatórios e validação de tipos
Você pode acessar o código fonte do projeto neste repositório ou fazer o download/clone para sua máquina local.
Após baixar o projeto, siga os passos abaixo:
- Node.js (versão 18 ou superior)
- pnpm (gerenciador de pacotes)
- Clone o repositório (se ainda não fez):
git clone <url-do-repositorio>
cd 4874-tecboard-react-vite
- Instale as dependências:
pnpm install
- Execute o servidor JSON (API mock):
pnpm run json-server
- Em outro terminal, execute a aplicação:
pnpm run dev
- Acesse a aplicação:
Abra seu navegador e vá para
http://localhost:5173
pnpm run dev
- Inicia o servidor de desenvolvimentopnpm run build
- Gera a build de produçãopnpm run preview
- Preview da build de produçãopnpm run lint
- Executa o linting do código
O projeto utiliza JSON Server para simular uma API REST. Os dados dos eventos ficam armazenados no arquivo db.json
e a API roda na porta 3000.
Endpoints disponíveis:
GET /events
- Lista todos os eventosGET /events?_page=1&_per_page=4
- Lista eventos com paginaçãoPOST /events
- Cria um novo evento
Este projeto foi desenvolvido como parte do curso da Alura sobre React com Vite, abordando conceitos modernos de desenvolvimento frontend como:
- Gerenciamento de estado com TanStack Query
- Validação de formulários
- Paginação e infinite scroll
- Design system com Material-UI
- Performance e otimização
Gostou do projeto e quer conhecer mais? Você pode acessar o curso da Alura que desenvolve este projeto!