projects

Aplicação web de gestão de associação

Uma aplicação web de gestão de associação para acompanhar associados, registrar doações, produzir sínteses anuais e gerar recibos fiscais por e-mail ou por correio.

Publicado em 14 de maio de 2026

Status: Em desenvolvimento ativo

Visão geral

Esta aplicação web foi concebida para responder a necessidades concretas de uma associação que acompanha associados, registra doações e precisa produzir recibos fiscais confiáveis.

O objetivo não é apenas centralizar as informações, mas também proteger o seu tratamento, manter rastreabilidade das ações sensíveis e facilitar o trabalho diário das pessoas que administram a associação.

Funcionalidades principais

A aplicação cobre várias necessidades operacionais:

  • gestão das fichas de associados
  • criação, modificação e exclusão de doações
  • importação inicial de dados a partir de arquivos Excel
  • síntese das doações por ano ou no conjunto dos anos
  • filtragem e pesquisa nas listas
  • separação de diferentes origens de doações
  • exportação de dados, em especial para Excel e CSV

Uma atenção especial é dada ao acompanhamento das doações, com visões agregadas por associado, totais anuais ou acumulados e filtros úteis para localizar rapidamente uma campanha ou um conjunto de operações.

Recibos fiscais e mala direta

Uma das funções centrais da aplicação é a produção de recibos fiscais.

Ela permite:

  • gerar um recibo fiscal em PDF para uma doação individual ou para o conjunto das doações de um associado em determinado ano
  • enviar esses recibos por e-mail quando o doador possui endereço registrado
  • preparar um fluxo de correio para as pessoas sem e-mail
  • produzir lotes de PDF para impressão
  • manter um registro dos envios e um registro das impressões

Esse ponto é importante porque uma associação precisa poder justificar o que foi gerado, enviado, impresso ou reinicializado, especialmente quando estão em jogo documentos fiscais.

Segurança e dados sensíveis

Como os dados tratados são sensíveis, o projeto integra várias camadas de proteção.

A autenticação se apoia em:

  • sessões seguras no lado do servidor
  • cookies configurados em modo estrito
  • exigência de HTTPS em produção
  • proteção CSRF nas ações não seguras
  • um mecanismo simples anti força bruta na página de login

A autorização é gerida por papéis:

  • admin
  • editor
  • viewer

Algumas rotas, como as páginas de administração ou certas operações de reinicialização, são reservadas ao nível admin. Outras funções de gestão diária ficam acessíveis aos perfis admin e editor.

A aplicação também mantém um histórico de conexões:

  • logins bem-sucedidos e falhos
  • endereço IP
  • agente do usuário
  • papel associado
  • motivo de falha quando aplicável

Isso fornece uma base útil para auditoria, diagnóstico e monitoramento de acessos não autorizados. Procedimentos regulares de backup da base de dados complementam esse dispositivo para reduzir o risco de perda de dados e facilitar a retomada da operação.

Logs e supervisão

O projeto vai além dos logs básicos da aplicação.

A produção prevê uma cadeia centralizada de supervisão e journalização adaptada ao acompanhamento:

  • dos eventos de autenticação
  • dos acessos negados
  • das ações web sensíveis
  • de parte das operações ligadas aos dados

Esse conjunto é particularmente relevante para uma aplicação associativa que manipula informações pessoais, valores de doações e documentos fiscais.

Tecnologias utilizadas

A aplicação se apoia em uma base técnica relativamente simples, mas sólida:

  • um backend web Python
  • renderização HTML no lado do servidor
  • uma camada de acesso a dados adaptada aos tratamentos de negócio
  • uma base de dados relacional em produção
  • um ambiente local leve para alguns testes ou usos de desenvolvimento
  • migrações de esquema controladas
  • execução conteinerizada
  • ferramentas dedicadas à geração de PDF
  • cobertura de testes automatizados

A interface permanece deliberadamente sóbria e orientada à administração, com páginas de lista, formulários e visões de journal adaptadas ao uso interno.

Desenvolvimento e operação

O desenvolvimento é pensado para uso em ambiente Linux, com contêineres de desenvolvimento e uma separação clara entre os contextos dev, test e prod.

O fluxo inclui em especial:

  • um ambiente de desenvolvimento reproduzível
  • contêineres para a aplicação e a base de dados
  • migrações de esquema para evoluir a base de forma limpa
  • scripts de inicialização de usuários e tipos de doação
  • importação de conjuntos de dados de trabalho
  • procedimentos regulares de backup da base de dados
  • testes unitários e testes mais sensíveis sobre a base de dados

A produção visa um ambiente Linux, com uma arquitetura conteinerizada que separa:

  • a aplicação web
  • a base de dados
  • os serviços de terminação web segura
  • os mecanismos de backup e supervisão

Essa organização favorece uma implantação mais controlada, uma manutenção mais simples e uma melhor clareza das responsabilidades técnicas.

Público-alvo

Esse tipo de aplicação é destinado a associações que precisam de:

  • uma base centralizada de associados
  • acompanhamento confiável das doações
  • produção controlada de recibos fiscais
  • separação clara dos papéis de usuário
  • melhor rastreabilidade dos acessos e das ações sensíveis

Ela também pode servir como base para outras aplicações internas nas quais confiabilidade, confidencialidade e rastreabilidade sejam mais importantes que a sofisticação da interface.

Para qualquer pedido de informação, evolução, extensão ou desenvolvimento de uma aplicação baseada neste mesmo princípio, entre em contato pelo endereço jacques[dot]grelet[at]gmail[dot]com.