# Histoire de Globinours Globinours est né d’un besoin de terrain : réunir dans une application légère les informations qu’un refuge utilise chaque jour, sans imposer une infrastructure complexe. Le projet s’est construit autour de PHP et SQLite afin de rester facile à installer, sauvegarder et déplacer. Les premières versions ont posé la fiche animale, le suivi médical, les placements, les adoptions, les documents et les tournées. L’application s’est ensuite enrichie d’un annuaire, de statistiques, d’outils administratifs, d’une pharmacie, d’un agenda partagé et d’un site public séparant strictement les contenus publiés des informations internes. La sécurité et la continuité ont progressivement rejoint le cœur du projet : authentification, permissions, journal d’audit, médias privés hors de la racine web, sauvegardes vérifiées, restauration contrôlée, protection CSRF, limitation des connexions et paramètres adaptés aux reverse proxies de confiance. L’import depuis Animal Shelter Manager a été conçu comme un parcours prudent. Les analyses commencent en simulation, les rapprochements ambigus restent à vérifier et les imports réels sont précédés d’une sauvegarde. Aucun fichier source ni aucune donnée d’un refuge pilote n’est livré avec Globinours. Avant la version 1.0, le projet a fait l’objet d’un nettoyage structurel et d’un découpage de ses fichiers les plus volumineux. La recherche universelle, les salles configurables, les traductions française et anglaise et une suite de contrôles isolés ont complété cette phase de stabilisation. ## `1.0.0-rc.30` — Corrections issues de la validation terrain Une passe croisée avec les sauvegardes ASM3 a corrigé une collision historique entre Gribouille et Lucci. Le suivi médical gagne une date de test FIV/FeLV, des catalogues administrables et une meilleure association entre tarifs et cliniques. La synchronisation I-CAD, la navigation mobile et l’identité Android ont également été adaptées aux conditions réelles d’utilisation. ## `1.0.0-rc.29` — Suivi médical et présentation Les traitements et les intitulés des produits médicaux peuvent être corrigés après leur saisie. Le formulaire des vermifuges s’ouvre de nouveau correctement. La fiche animale montre sa date de naissance et le CSS personnalisé du site public prend priorité sur les styles standard. ## `1.0.0-rc.28` — Corrections des saisies médicales Les vaccinations et administrations de vermifuges ou d’anti-puces peuvent être corrigées sans provoquer une seconde sortie de stock ni une nouvelle dépense. Les nouvelles fiches de chats proposent également la race Chat Européen par défaut. ## `1.0.0-rc.27` — Recherche tolérante La recherche globale retrouve les animaux par leur numéro de puce ou de tatouage et rapproche les termes indépendamment de leur casse et de leurs accents. ## `1.0.0-rc.26` — Salles réellement configurables Retrait de la dernière contrainte héritée qui limitait encore les fiches animales aux deux premières salles historiques. La migration conserve les animaux et toutes leurs relations tout en autorisant les salles définies dans la configuration. Les états d’enregistrement I-CAD suivent désormais le changement de propriétaire, tandis que le suivi vaccinal s’appuie sans doublon sur le cabinet et le vétérinaire de l’annuaire. ## `1.0.0-rc.25` — Portées modifiables Les portées ne sont plus figées après leur création : parents et date peuvent être corrigés, tandis que les chatons peuvent être ajoutés, modifiés ou détachés sans perte de leur fiche. ## `1.0.0-rc.24` — Permissions durables Séparation plus stricte entre les données privées et les médias publics afin que les réparations de sécurité et les mises à jour conservent l’accès de Nginx aux images et aux ressources de l’interface. Les deux structures d’historique rencontrées sur les installations anciennes sont également réunifiées pour sécuriser les portées et les autres écritures métier. ## `1.0.0-rc.1` — Première stabilisation Nettoyage du projet, séparation des principales vues animales, découpage du contrôleur et validation initiale des parcours essentiels. ## `1.0.0-rc.2` — Recherche universelle Recherche transversale respectant les permissions et poursuite du découpage du cœur applicatif. ## `1.0.0-rc.3` — Gel fonctionnel Séparation des ressources visuelles et des routes, correction de l’installation vierge, jeu de démonstration enrichi et harmonisation de la présentation avant le gel fonctionnel de la version 1.0. ## `1.0.0-rc.4` — Retours de terrain Correction des déplacements et des médias publics, amélioration du site public, ajout de filtres depuis les statistiques et extension des références biologiques à toutes les espèces configurées. ## `1.0.0-rc.5` — Édition du site public Ajout d’une bibliothèque d’images pour les contenus publics, simplification des réseaux sociaux et correction de la navigation depuis les statistiques vers les fiches archivées. ## `1.0.0-rc.6` — Compatibilité des ressources Remplacement de la police emoji par un format vectoriel accepté par les navigateurs et renforcement de la publication des médias par le paquet YunoHost. ## `1.0.0-rc.7` — Premier lot de tickets Fiabilisation du géocodage et des formulaires de configuration, amélioration des tournées de soins et publication d’animaux adoptables dans le jeu de démonstration. ## `1.0.0-rc.8` — Deuxième lot de tickets Clarification du diagnostic système et de la santé des sauvegardes, validation des identifiants administratifs et encadrement des longueurs de noms. ## `1.0.0-rc.9` — Troisième lot de tickets Extension des liens sociaux du site public, clarification des salles et des tarifs, et documentation du routage nécessaire à la recherche locale. ## `1.0.0-rc.10` — Statuts des animaux Correction du champ de statut du formulaire animal, stabilisation des codes internes et translittération des noms accentués. ## `1.0.0-rc.11` — Salles et tournées Ajout de critères d’accueil par salle et de quatre créneaux de tournée configurables sans modifier les réglages existants. ## `1.0.0-rc.12` — Tarifs par espèce Remplacement des deux montants globaux par une grille d’adoption propre à chaque espèce, avec tarif fixe ou libre. ## `1.0.0-rc.13` — Catalogue vétérinaire Ajout de la modification et de la suppression sécurisée des tarifs, sans altérer les dépenses historiques. ## `1.0.0-rc.14` — Finition du catalogue vétérinaire Allègement de la colonne d’actions grâce à des commandes compactes et accessibles. ## `1.0.0-rc.15` — Navigation dans les tarifs Intégration de la modification directement dans les lignes du catalogue pour retrouver les habitudes de navigation de Globinours. ## `1.0.0-rc.16` — Mise à jour autonome Création d’un parcours de mise à jour commun à l’interface et à la ligne de commande, avec releases Forgejo, sauvegarde obligatoire, contrôles d’intégrité et retour arrière complet. ## `1.0.0-rc.17` — Utilisation mobile Remplacement de la barre de navigation horizontale par un menu mobile repliable et fiabilisation des permissions appliquées aux nouvelles photos publiques. ## `1.0.0-rc.18` — Finitions du site public Déplacement des informations légales dans le pied de page, insertion guidée des images sans perdre les textes en cours d’édition et identification visuelle des réseaux sociaux. ## `1.0.0-rc.19` — Contrôles de soins horodatés Ajout d’une date et d’une heure modifiables aux contrôles médicaux, avec reprise cohérente de l’instant choisi dans les mesures de poids et les données associées. ## `1.0.0-rc.20` — Localisations cohérentes Simplification des lieux affichés dans la fiche, conservation de l’adresse actuelle et réparation des coordonnées manquantes après un import ou un placement. ## `1.0.0-rc.21` — Température pendant les tournées Ajout d’une température préremplie à 38,5 °C lors du contrôle de chaque animal et affichage conjoint des courbes de poids et de température dans son dossier médical. ## `1.0.0-rc.22` — Disponibilité après adoption Une adoption finalisée rend désormais automatiquement l’animal indisponible à l’adoption afin que son état administratif et sa visibilité restent cohérents. ## `1.0.0-rc.23` — Fiabilité des portées Suppression d’un ancien bloc de téléversement qui bloquait la création des fratries et harmonisation de leur écriture dans l’historique des animaux.