Este projeto é uma aplicação Single Page Application (SPA) desenvolvida em React JS, seguindo o padrão de design system do Governo Federal (DS Gov). O sistema conta com autenticação, registro de usuários e um painel de visualização protegido.
- React JS (v19)
- Vite (Build tool)
- React Router Dom (Roteamento)
- Axios (Requisições HTTP)
- @govbr-ds/core (Design System do Governo)
- FontAwesome (Ícones)
- Context API (Gerenciamento de Estado Global)
O projeto segue a seguinte estrutura de pastas:
src/
├── components/ # Componentes reutilizáveis (Header, Menu, Feedback, etc.)
├── contexts/ # Contextos globais (Auth, Message)
├── pages/ # Páginas da aplicação (Acessar, Registrar, Painel)
├── services/ # Configuração de serviços (API)
├── App.jsx # Componente raiz e definição de rotas
└── main.jsx # Ponto de entrada da aplicação
- Página de Acesso: Formulário de login (e-mail e senha).
- Proteção de Rotas: A página de Painel é acessível apenas para usuários autenticados.
- Logout: Funcionalidade de encerrar sessão com redirecionamento automático para a página de acesso.
- Página de Registro: Formulário para criar nova conta com E-mail, Data de Nascimento e Senha.
- Feedback: Exibição de pop-ups (Toasts) para confirmar ações, como o sucesso no registro.
- Listagem: Exibição de usuários cadastrados em formato de lista/tabela.
- Interatividade: O menu lateral se adapta ao estado de autenticação do usuário.
- Padrão Gov.br: Utilização de cabeçalho, menu lateral e componentes visuais padronizados.
- Responsividade: Layout adaptável para diferentes tamanhos de tela.
-
Instale as dependências:
npm install
-
Inicie o servidor de desenvolvimento:
npm run dev
-
Acesse a aplicação: Abra o navegador e acesse o endereço indicado no terminal (geralmente
http://localhost:5173).
A aplicação está configurada para se comunicar com uma API através do src/services/api.js. Certifique-se de que o backend esteja rodando e que a baseURL esteja configurada corretamente para que as funcionalidades de login e registro operem como esperado.
Desenvolvido como parte do teste prático para Rede SUAS.