Aurora - Requisitos Requisitos Funcionais Servidor: Login com credenciais do Solar Seleciona o Evento Pesquisa pelo assistido(a) (Solar) Caso não encontre, pode o registrar (Solar) Registra o atendimento Comprovantes de voluntário * Admin Login com credenciais prórpias do Aurora Acesso ao painel de Admin Criação de eventos O admin cria uma “Categoria” para o evento. Ex: Dia do Cidadão, Dia da Mulher A categoria vai ser cadastrada e terá “Presets”, os presets serão qualificações pré-definidas, que podem ou não ser usadas em um cadastro de novo evento, servindo como base. Após a criação da categoria, o evento poderá ser criado, usando da categoria como base, evitando o recadastro de serviços. O evento contém: Categoria Data Qualificações Estátisticas O admin deve ser capaz de visualizar estatisticas por evento. Também deverá ser possível extrair as estatisticas para um PowerBI, por isso a aplicação deverá usar SQL Server como banco, para facilitar esse processo. O admin seleciona um evento já cadastrado Cai no painel de admin, onde será possível visualizar as estatisticas de cada evento. Deverá ser possível ver: Serviços associados Ver atendimentos Indicadores Servidores Serviços Atendimentos gerados no Solar Data do evento Estatisticas detalhadas Pessoas atendidas Parceiros Média de Serviços por pessoa Atendimentos Voluntários Alguns serviços podem precisar de estatísticas diferentes das comuns a outros eventos, uma solução pode ser o sistema disponibilizar alguns campos que podem ser adicionados ou removidos das estatisticas, por exempĺo: Cor da Pele Lanches Entregues. Esses campos devem estar prontos no sistema, e devem funcionar de maneira modular, permitindo com que sejam selecionados ou não, sem prejuízos a outros eventos. Logs do sistema, toda operação deverá gerar um log que seja rastreável, assim podendo ser filtrado, pesquisado e etc. O log deve conter: Rash (Identificador) Ação Usuário Data e Hora Requisitos Não Funcionais Design Moderno, inspirado no Liquid Glass e Frosted Glass. O Banco de Dados deverá ser SQL Server, para facilitar a integração com o PowerBI. Aplicação deverá ser modular, evitando configurações hardcoded A aplicação deverá conter ampla segurança, portanto: Operações devem ser realizadas na API, mesmo chamadas que sejam chamadas diretas ao solar. Tokens JWT com assinatura Verificação de permissões A comunicação deverá ser feita por HTTPS, ao menos da comunicação interna do Aurora. Rate Limiting, para evitar ataques de força bruta. CORS restrito e bem configurado Proteção CSRF Proteção XSS Headers de segurança (HelmetJS) Não deve ser feito o armazenamento de qualquer informação sensível em localStorage/sessionStorage Cookies apenas HTTPOnly, com flag secure (PROD) Em produção, não expor portas do banco ou api, tudo ser feito pelo traefik ou nginx. Travas de carregamento para evitar spam de requests.   CI/CD para checagem automática de erros e segurança Testes unitários, especialmente em funções críticas para o sistema. Monitoramento de dependencias para garantir que não existam vulnerabilidades em bibliotecas de terceiros. Eslint e Prettier para melhorar o padrão de código. Tecnologias a serem usadas: ReactJS com Vite e TypeScript TailwindCSS HeroUI NodeJS com Express e TypeScript