Vigiante
Vigiante é uma plataforma web para coleta, organização e gestão de dados estruturados de campo, baseada em projetos e formulários digitais.
A aplicação permite registrar informações padronizadas, anexar arquivos e acompanhar registros de forma organizada e segura.
O sistema é composto por três componentes principais:
- Frontend: Angular (interface web)
- Backend: Java + Spring Boot (API REST)
- Autenticação: Keycloak
Visão Geral
O Vigiante foi desenvolvido para apoiar fluxos de trabalho que exigem coleta estruturada de dados, especialmente em projetos que envolvem equipes distribuídas ou trabalho de campo.
A plataforma permite:
- criar e gerenciar projetos
- definir formulários personalizados
- registrar dados estruturados
- anexar arquivos e mídias
- controlar usuários e permissões
- acessar os dados por meio de uma API REST
Essa abordagem permite adaptar o sistema para diferentes tipos de projetos sem necessidade de modificar o código da aplicação.
Arquitetura
O Vigiante utiliza uma arquitetura baseada em SPA + API.
Frontend (Angular)
↓
API REST (Spring Boot)
↓
Banco de Dados
↓
Autenticação (Keycloak)
Essa separação permite evolução independente entre interface e backend.
Componentes do Sistema
Frontend
Aplicação web desenvolvida em Angular, responsável pela interface do usuário.
Principais funcionalidades:
- navegação entre projetos
- criação e edição de formulários
- registro de dados
- upload de arquivos
- visualização de registros
Diretório principal:
vigiante-front/
Backend
API REST desenvolvida em Spring Boot, responsável pela lógica de negócio e persistência de dados.
Principais responsabilidades:
- gerenciamento de projetos
- definição de formulários
- armazenamento de registros
- gerenciamento de arquivos
- controle de acesso
Diretório principal:
viconsaga_fiotec_java/
Autenticação
A autenticação é realizada por meio do Keycloak, utilizando:
- OAuth2
- OpenID Connect
- JWT
Isso permite autenticação segura e gerenciamento centralizado de usuários.
Estrutura do Repositório
vigiante/
├── vigiante-front/ # frontend Angular
├── viconsaga_fiotec_java/ # backend Spring Boot
├── docker/ # configuração do Keycloak
├── docker-compose.yml # execução do ambiente
└── Dockerfile
Execução do Projeto
Requisitos
- Docker
- Docker Compose
Execução com Docker
Para iniciar todo o ambiente:
docker-compose up
Isso iniciará:
- API backend
- serviço de autenticação (Keycloak)
- demais serviços necessários
Execução manual (opcional)
Backend
cd viconsaga_fiotec_java
mvn spring-boot:run
Frontend
cd vigiante-front
npm install
ng serve
Documentação da API
A API utiliza OpenAPI / Swagger.
Após iniciar o backend, a documentação pode ser acessada em:
/swagger-ui
Contribuição
Contribuições são bem-vindas.
Fluxo recomendado:
git checkout -b minha-feature
git commit -m "Nova funcionalidade"
git push origin minha-feature
Depois disso, abra um Pull Request.
Objetivo do Projeto
O Vigiante busca oferecer uma plataforma flexível para coleta e gestão de dados estruturados, permitindo que diferentes projetos configurem seus próprios formulários e fluxos de registro.