Aller au contenu

Documentation de Fulgoria

Fulgoria extrait des données structurées de documents conçus pour être lus, non analysés. Vous lui apprenez une mise en page une seule fois en marquant les colonnes ; à partir de là, il lit tout document du même type et vous donne un CSV propre. Tout ce qui suit se passe dans votre navigateur.

Cliquez sur Ouvrir un PDF ou une image et choisissez un fichier, ou sélectionnez Voir un exemple pour charger un relevé bancaire d’exemple. Les PDF numériques comme les numérisations ou les photos sont tous deux acceptés. Les numérisations et les images sont lues avec l’OCR local (Tesseract.js), de sorte que même l’image d’un relevé devient du texte sans quitter votre machine.

Fulgoria détecte automatiquement les colonnes en premier passage. Vous les affinez en faisant glisser sur le document pour indiquer où se trouve chaque donnée. Attribuez ensuite un rôle à chaque colonne :

  • date — la date de la transaction
  • description — le concept ou le bénéficiaire
  • débit / crédit / montant signé — la valeur du mouvement
  • solde — le solde courant
  • texte — toute autre colonne que vous souhaitez conserver

Vous pouvez aussi appliquer un formatage libre, de style Excel par colonne (motifs de date et de nombre, WYSIWYG) et définir des règles d’exclusion par contenu pour ignorer les en-têtes répétés, les lignes « TOTAUX » et le bruit similaire.

Un éditeur de type tableur vous permet de corriger n’importe quelle cellule, avec le solde qui se recalcule en direct. Il prend en charge rechercher et remplacer, ajouter et supprimer des lignes, coller depuis Excel, annuler/rétablir, remplissage vers le bas, catégorisation assistée, indicateurs de qualité, et valeurs d’ouverture/clôture éditables.

Une fois les données propres, exportez-les :

  • CSV — les mouvements, prêts pour un tableur ou votre outil de comptabilité.
  • Modèle — la géométrie sous forme de fichier réutilisable .ext.json ou .ext.yaml (voir ci-dessous).
  • Envoyer à Escriba — transmettez le résultat propre à votre Escriba local.

Entrée

PDF numériques et numérisations / images (PNG, JPG et similaires). Les documents multi-pages et les PDF multi-comptes — par exemple pesos et dollars dans un même fichier — produisent une carte par compte.

Sortie

CSV pour les mouvements, et des fichiers modèles en .ext.json ou .ext.yaml pour la mise en page. Un passage « Envoyer à Escriba » transmet le résultat au reste de la suite.

La première fois que vous marquez le relevé d’une banque, Fulgoria peut enregistrer cette mise en page comme modèle. La fois suivante où vous ouvrez un document du même type, il est reconnu automatiquement et les colonnes sont déjà en place — pas besoin de re-marquer.

Les modèles peuvent être chargés depuis un fichier .json téléchargé ou choisis parmi vos modèles enregistrés au sein de l’application.

Tout s’exécute dans votre navigateur. Le PDF est ouvert, lu et traité au sein de votre machine, et il n’y a pas la moindre requête externe — les polices et les bibliothèques sont embarquées dans l’application. La confidentialité n’est pas une fonctionnalité ajoutée ; c’est l’architecture.

Lorsque Fulgoria est auto-hébergé, le serveur léger ne reçoit toujours jamais le document. Il ne fait que servir les fichiers statiques et gérer le login optionnel. Il applique une CSP stricte et des en-têtes de sécurité, et n’expose jamais .env, server.js ni aucun échantillon privé.

Pour la production, Fulgoria embarque un serveur léger (server.js, Node/Express) dont les seules tâches sont de servir l’application statique et de la protéger derrière un login optionnel lu depuis .env.

Mettez AUTH_ENABLED=true et configurez AUTH_USER et AUTH_PASSWORD. Les sessions sont signées avec SESSION_SECRET et durent SESSION_TTL_HOURS heures. Derrière HTTPS, conservez COOKIE_SECURE=true.

Générez un hash de mot de passe bcrypt et un secret de session comme ceci :

Fenêtre de terminal
node server.js --hash 'your-password' # → AUTH_PASSWORD
openssl rand -hex 32 # → SESSION_SECRET

Tous les réglages résident dans .env :

VariableValeur par défautRôle
PORT3000Port du serveur.
AUTH_ENABLEDtrueActive ou désactive le login.
AUTH_USERdiegoNom d’utilisateur du login.
AUTH_PASSWORD(vide)Mot de passe en texte clair ou hash bcrypt.
SESSION_SECRET(vide)Signe le cookie de session.
SESSION_TTL_HOURS12Durée de vie de la session en heures.
COOKIE_SECUREtruetrue derrière HTTPS, false pour http:// local.
ESCRIBA_URL(vide)Cible de « Envoyer à Escriba » ; vide, retombe sur /.