Sistema web para gerenciamento e consulta de departamentos organizacionais, permitindo encontrar rapidamente informações de contato, localização e responsáveis de cada setor.
O GuiaDepto é uma aplicação desenvolvida em React que facilita a organização e consulta de informações de departamentos. Com uma interface moderna e intuitiva, o sistema permite tanto a consulta pública de departamentos quanto o gerenciamento administrativo dos dados.
- Consulta de Departamentos: Busca inteligente com filtros e autocompletar
- Gerenciamento: Área administrativa para criar, editar e excluir departamentos
- Organização por Andares: Visualização estruturada dos departamentos por localização
- Autenticação: Sistema de login para acesso às funcionalidades administrativas
- Informações Detalhadas: Ramal, e-mail, funcionários responsáveis e localização
- React
- Redux (gerenciamento de estado)
- Redux Saga (efeitos colaterais)
- React Router (navegação)
- Styled Components (estilização)
- Axios (requisições HTTP)
- React Toastify (notificações)
# Clone o repositório
git clone [url-do-repositorio]
# Instale as dependências
npm install
# Configure a URL da API em src/services/axios.js
# Inicie o projeto
npm startA aplicação requer uma API REST para funcionar. Configure a URL base da API no arquivo src/services/axios.js:
export default axios.create({
   baseURL: 'sua-url-api-aqui',
});- /- Landing page
- /consultar- Consulta de departamentos (pública)
- /gerenciar- Gerenciamento de departamentos (requer login)
- /departamentos/:andar- Lista departamentos por andar (requer login)
- /departamento/- Criar novo departamento (requer login)
- /departamento/:id/edit- Editar departamento (requer login)
- /login- Página de login
- /register- Registro de usuário
O projeto utiliza um tema escuro moderno com paleta de cores baseada em indigo/roxo. As cores e estilos podem ser personalizados através do arquivo src/config/colors.js.
O sistema utiliza JWT (JSON Web Tokens) para autenticação. O token é armazenado no Redux e persistido no localStorage através do redux-persist.
As rotas de gerenciamento são protegidas e requerem autenticação. Usuários não autenticados são redirecionados para a página de login.