Eclipse - Frontend Eclipse é um software desenvolvido para a gestão completa do envio, avaliação e acompanhamento de relatórios no âmbito jurídico-administrativo. A plataforma oferece funcionalidades específicas para três tipos de usuários: Defensores: Criam e submetem triagens e peças processuais. Avaliadores: Avaliam peças e triagens enviadas. Corregedor: Gerencia usuários, aprovações e negações, além de supervisionar o sistema. O sistema também oferece  notas automáticas , critérios de avaliação e um fluxo para solicitação de recursos , promovendo transparência e controle. Tecnologias Next.js (App Router) TypeScript Tailwind CSS NextAuth (Autenticação) Docker (ambiente de desenvolvimento e produção)Usando Docker (ambiente de desenvolvimento) HeroUI : Biblioteca de componentes visuais modernos e acessíveis (botões, tabelas, modais, etc.), amplamente utilizada na interface do Eclipse para padronizar a experiência do usuário e facilitar/otimizar o desenvolvimento. Tailwind CSS : Utilizado em conjunto com HeroUI para estilização utilitária e responsiva. Estrutura de Pastas eclipse/ ├── app/ # Rotas e páginas (App Router) │ ├── api/auth/[...nextauth]/route.ts # Rota de autenticação (NextAuth) │ ├── registrar/ # Página de registro de usuáros │ ├── (user-routes)/ # Rotas específicas para usuários logados │ └── (usuario)/ # OTP e redefinição de senha │ ├── components/ # Componentes utilizados no projeto │ └── avaliador/ # Componentes de tela do avaliador │ └── corregedor/ # Componentes de tela do corregedor │ └── defensor/ # Componentes de tela do defensor │ └── inicial/ # Componente de gerenciamento da Home │ └── sidebar/ # Componente de gerencialmento da troca entre telas │ ├── providers/ # Contextos globais (auth, loading, sessão) │ └── HeroProvider # Gerenciamento da biblioteca de User Interface que facilita a criação de componentes │ └── LoadingProvider # Gerenciamento das funções de loading do software │ └── ScreenProvider # Gerenciamento das trocas de componente em tela e seus parâmentros │ └── SessionProvider # Gerenciamento das informações de sessão do usuário logado │ ├── public/ # Arquivos estáticos(Imagens e Icones) │ ├── utils/ # Funções utilitárias │ └── NextAuthOptions # Configurações de autenticação de usuário │ └── *.tsx # Demais utilitários │ ├── Dockerfile.* # Dockerfiles para build e produção ├── next.config.ts # Configurações do Next.js └── tailwind.config.js # Configurações do Tailwind CSS Autenticação A autenticação é gerenciada por NextAuth com a configuração definida em: app/api/auth/[...nextauth]/route.ts Suporta autenticação por e-mail/senha com fluxo de redefinição de senha via token e OTP. Padrões de Código Componentes funcionais com Hooks. Organização baseada em papéis de usuário. ESLint configurado com suporte a TypeScript. Estilização com Tailwind CSS. Uso de HeroUI para componentes reutilizáveis. Colaboração Branches main : Produção develop : Desenvolvimento feat--* : Novas funcionalidades fix--* : Correções Funcionalidades em Destaque Triagens e submissões por defensores. Avaliação e notas automáticas. Acompanhamento de histórico. Fluxo de aprovação/negação com recurso e/ou usuários do sistema. Sistema robusto de autenticação e segurança. Equipe de Desenvolvimento Desenvolvedores Fullstack: João Vitor Viana Chaves Gustavo Costa Vinícius Jesus Guilherme Barbosa Coordenação Técnica:  Guilherme Layon