Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Wiki Wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • WimBelemDon
  • WikiWiki
  • Wiki
  • frontend

Last edited by Isabela Araujo Sep 06, 2025
Page history

frontend

Home Escopo Processo Design/Mockups Configuração Arquitetura Gerência Código BD Frontend Backend

Frontend – WimBelemDon+

O frontend do WimBelemDon+ é uma aplicação Progressive Web App (PWA) desenvolvida em React + TypeScript, com o objetivo de oferecer uma interface rápida, responsiva e simples de manter para os colaboradores da plataforma.


Visão Geral

  • O que é: uma aplicação web que pode ser usada diretamente no navegador ou instalada como app (PWA).
  • Objetivo: melhorar a experiência de usuários que interagem com a plataforma WimBelemDon.
  • Deploy: disponível publicamente em GitHub Pages.
  • Integração: conecta-se a serviços internos e usa Firebase para autenticação de usuários.

Para detalhes técnicos de instalação, desenvolvimento e deploy, consulte o repositório do frontend.


Arquitetura em Alto Nível

A aplicação é organizada em camadas para separar responsabilidades:

  1. Interface (UI)

    • Construída com React e componentes do Material UI (MUI).
    • Páginas e componentes são organizados em pages/ e components/.
  2. Navegação

    • Controlada com React Router.
    • Cada rota corresponde a uma página principal da aplicação.
  3. Gestão de Estado e Dados

    • Uso de React Query para buscar e armazenar dados em cache.
    • Comunicação com APIs feita via Axios.
    • Firebase provê autenticação e gerenciamento de sessão.
  4. Serviços e Lógica de Negócio

    • Encapsulados na pasta services/.
    • Hooks customizados (hooks/) facilitam o reuso de lógica.
  5. Configuração e Estilos Globais

    • Variáveis e constantes em constants/.
    • Estilos globais em styles/.

Fluxo de Desenvolvimento e Publicação

O ciclo de vida do frontend segue este processo:

  1. Desenvolvedores criam branches (feature/*, fix/*, etc.) a partir da develop.
  2. As branches são revisadas e integradas na develop.
  3. Quando se deseja gerar uma nova versão estável, é aberto um Pull Request de develop para main.
  4. O merge na main dispara uma GitHub Action, que:
    • compila o projeto,
    • publica automaticamente no GitHub Pages.
  5. Como o frontend é um PWA, basta o usuário recarregar a página para obter a versão mais recente do aplicativo.

💡 Abaixo está um diagrama visual desse fluxo:

image


Contribuição

  • O desenvolvimento segue convenções de branches e commits (padrão Conventional Commits).
  • Pull requests são revisados antes de entrar na branch principal de desenvolvimento.
  • Toda a contribuição deve manter a coerência com os padrões de código e estilo definidos no projeto.

Para detalhes sobre o fluxo de contribuição, veja o arquivo CONTRIBUTING.md.


Tecnologias Principais

  • React + TypeScript → base da aplicação.
  • React Router → gerenciamento de rotas.
  • React Query + Axios → consumo de APIs e cache de dados.
  • Firebase → autenticação.
  • MUI → componentes e estilização.
  • Vite → build e ambiente de desenvolvimento.

Para Novos Colaboradores

Se você deseja contribuir:

  1. Consulte o repositório do frontend para instruções técnicas.
  2. Leia o arquivo CONTRIBUTING.md para entender convenções de branches, commits e pull requests.
  3. Peça ajuda ao time se tiver dúvidas sobre o fluxo de trabalho ou sobre a organização do código.
Clone repository
  • Banco de Dados
  • Escopo
  • Home
  • arquitetura
  • frontend
  • processo