Este repositório contém o front-end da aplicação TaskCollab, desenvolvido como parte de uma atividade do curso Técnico em Informática para Internet do SENAI.
TaskCollab é uma aplicação web para gerenciamento de tarefas para uso interno em uma empresa fictícia, permitindo que usuários criem, visualizem e gerenciem suas tarefas de forma eficiente. A aplicação oferece recursos como:
- Autenticação de usuários (login/registro)
- Dashboard para visualização de tarefas
- Criação e edição de tarefas
- Visualização detalhada de tarefas
- Filtros e ordenação de tarefas
- React - Biblioteca JavaScript para construção de interfaces
- React Router - Gerenciamento de rotas na aplicação
- Axios - Cliente HTTP para comunicação com a API
- SCSS Modules - Estilização com escopo local para componentes
- Vite - Ferramenta de build rápida para desenvolvimento
- Context API - Gerenciamento de estado global
src/
├── components/ # Componentes reutilizáveis
├── contexts/ # Contextos React para gerenciamento de estado
├── pages/ # Componentes de página (rotas)
├── services/ # Serviços para comunicação com a API
├── styles/ # Estilos globais e módulos de estilo
├── utils/ # Funções utilitárias
├── App.jsx # Componente raiz da aplicação
└── main.jsx # Ponto de entrada da aplicação
- Navbar - Barra de navegação principal
- TaskCard - Exibição de tarefas em formato de card
- Filters - Componentes para filtrar listas de tarefas
- FormControls - Campos de formulário reutilizáveis
- Toast - Sistema de notificações
- Dashboard - Página inicial com visão geral das tarefas
- Login/Register - Páginas de autenticação
- CreateTask - Página para criação de novas tarefas
- TaskDetail - Página de detalhes de uma tarefa específica
- NotFound - Página de erro 404
O sistema utiliza autenticação baseada em JWT (JSON Web Tokens) com:
- Token de acesso para autenticação de requisições
- Token de refresh para renovação automática da sessão
- Proteção de rotas para usuários não autenticados
- Node.js (versão 16 ou superior)
- npm ou pnpm
- Clone o repositório
git clone https://github.com/Davi-D18/task_collab_front.git
cd task_collab_front- Instale as dependências
npm install
# ou
pnpm install- Configure as variáveis de ambiente
Crie um arquivo
.envna raiz do projeto com:
VITE_API_URL=<url-da-api>
- Execute o projeto em modo de desenvolvimento
npm run dev
# ou
pnpm dev- Para build de produção
npm run build
# ou
pnpm buildO projeto inclui documentação detalhada na pasta docs/, que cobre:
- Estrutura do projeto
- Componentes
- Contextos
- Fluxos de trabalho
- Serviços e utilitários
- Registro de novo usuário
- Login com credenciais
- Renovação automática de token
- Logout
- Criação de tarefas com título, descrição e prioridade
- Visualização de tarefas na dashboard
- Filtro e ordenação de tarefas
- Visualização detalhada de uma tarefa específica
Este projeto foi desenvolvido como atividade prática para finalização de um módulo.