projects
Application web de gestion d'association
Une application web de gestion d'association pour suivre les adhérents, enregistrer les dons, produire des synthèses annuelles et générer des reçus fiscaux par e-mail ou par courrier.
Statut: En développement actif
Présentation
Cette application web a été conçue pour répondre aux besoins concrets d’une association qui suit des adhérents, enregistre des dons et doit produire des reçus fiscaux fiables.
L’objectif n’est pas seulement de centraliser les informations, mais aussi de sécuriser leur traitement, de garder une traçabilité des actions sensibles et de faciliter le travail quotidien des personnes qui gèrent l’association.
Fonctionnalités principales
L’application couvre plusieurs besoins opérationnels:
- gestion des fiches adhérents
- saisie, modification et suppression des dons
- import initial de données depuis un fichier Excel
- synthèse des dons par année ou sur l’ensemble des années
- filtrage et recherche sur les listes
- distinction entre plusieurs sources de dons
- export de données, notamment au format Excel et CSV
Une attention particulière est portée au suivi des dons, avec des vues agrégées par adhérent, des totaux annuels ou cumulés, et des filtres utiles pour retrouver rapidement une campagne ou un ensemble d’opérations.
Reçus fiscaux et publipostage
L’un des rôles centraux de l’application est la production des reçus fiscaux.
Elle permet:
- de générer un reçu fiscal PDF pour un don ou pour l’ensemble des dons d’un adhérent sur une année
- d’envoyer ces reçus par e-mail lorsque l’adresse du donateur est disponible
- de préparer un mode courrier pour les personnes sans adresse e-mail
- de produire des lots PDF pour impression
- de conserver un journal des envois et un journal des impressions
Ce point est important, car une association doit pouvoir justifier ce qui a été généré, envoyé, imprimé ou réinitialisé, en particulier lorsqu’il s’agit de documents fiscaux.
Sécurité et données sensibles
Comme les données manipulées sont sensibles, le projet intègre plusieurs niveaux de protection.
L’authentification repose sur:
- une session sécurisée côté serveur
- des cookies configurés en mode strict
- une exigence HTTPS en production
- une protection
CSRFsur les actions non sûres - un mécanisme simple d’anti brute force sur la page de connexion
L’autorisation est gérée par rôles:
admineditorviewer
Certaines routes, comme l’administration ou certaines opérations de réinitialisation, sont réservées au niveau admin. D’autres fonctions de gestion quotidienne sont ouvertes aux profils admin et editor.
L’application conserve aussi un historique des connexions:
- succès et échecs de connexion
- adresse IP
- agent utilisateur
- rôle associé
- motif d’échec éventuel
Ce suivi apporte une base utile pour l’audit, le diagnostic et la surveillance d’accès non autorisés. Des procédures régulières de sauvegarde de la base de données complètent ce dispositif afin de réduire le risque de perte de données et de faciliter la reprise d’exploitation.
Journalisation et supervision
Le projet ne se limite pas aux logs applicatifs de base.
La production prévoit une chaîne de supervision et de journalisation centralisée adaptée au suivi:
- des événements d’authentification
- des accès refusés
- des actions web sensibles
- d’une partie des opérations liées aux données
Cet ensemble est particulièrement pertinent pour une application associative qui manipule des informations personnelles, des montants de dons et des pièces fiscales.
Technologies utilisées
L’application s’appuie sur une base technique relativement simple, mais robuste:
- un backend web Python
- un rendu HTML côté serveur
- une couche d’accès aux données adaptée aux traitements métier
- une base de données relationnelle en production
- un environnement local léger pour certains tests ou usages de développement
- des migrations de schéma maîtrisées
- une exécution conteneurisée
- des outils dédiés à la génération PDF
- une couverture de tests automatisés
L’interface reste volontairement sobre, orientée administration et efficacité, avec des pages de listes, des formulaires et des vues de journal adaptées à un usage interne.
Développement et exploitation
Le développement est pensé pour un usage sous environnement Linux, avec des conteneurs de développement et une séparation nette entre les contextes dev, test et prod.
Le workflow comprend notamment:
- un environnement de développement reproductible
- des conteneurs pour l’application et la base de données
- des migrations de schéma pour faire évoluer la base proprement
- des scripts d’initialisation des utilisateurs et des natures de don
- l’import de jeux de données de travail
- des procédures régulières de sauvegarde de la base de données
- des tests unitaires et des tests plus sensibles sur la base de données
La production cible un environnement Linux, avec une architecture conteneurisée qui sépare:
- l’application web
- la base de données
- les services de terminaison web sécurisée
- les mécanismes de sauvegarde et de supervision
Cette organisation permet un déploiement plus maîtrisé, une maintenance plus simple et une meilleure lisibilité des responsabilités techniques.
Public visé
Ce type d’application s’adresse aux associations qui ont besoin:
- d’une base adhérents centralisée
- d’un suivi fiable des dons
- d’une production cadrée des reçus fiscaux
- d’une séparation des rôles utilisateurs
- d’une meilleure traçabilité des accès et des actions sensibles
Elle peut aussi servir de base de travail pour d’autres applications internes où la fiabilité, la confidentialité et la traçabilité priment sur la sophistication de l’interface.
Pour toute demande de renseignement, d’évolution, d’extension ou de développement d’une application fondée sur ce principe, me contacter à l’adresse jacques[dot]grelet[at]gmail[dot]com.