====== Kresus ====== ===== Kesako ? ===== > Kresus est un gestionnaire de finances personnelles gratuit et libre qui tourne sur votre serveur. Voilà en quelques mots de quoi il s'agit, pour plus d'informations, visitez le site officiel: https://kresus.org/ On y trouve plein de fonctionnalités et des tutoriels. Alors pourquoi ajouter ce tutoriel s'il en existe déjà d'autres ? Et bien, car: - mon cas d'utilisation n'est pas celui prévu à la base (je ne récupère aucune donnée automatiquement de ma banque et le compte que j'administre dans l'outil est un compte commun avec potentiellement 4 à 8 accès différents). - je propose quelques astuces et retours d'expérience pour remercier les contributeurs de ce projet et lui souhaiter longue vie. ===== Tester localement avec le minimum ===== Pour tester localement l'application avec le minimum syndical (application et base données), je me suis servi de ce petit script et docker compose sous mon laptop en Debian 12. # création du répertoire de travail mkdir -p ~/workspace/sandbox/kresus # on y va cd ~/workspace/sandbox/kresus # création du fichier compose.yaml cat << EOF > compose.yaml services: db: image: "postgres:16.11" restart: unless-stopped env_file: - path: ./.env required: true volumes: - postgres_data:/var/lib/postgresql/data/ kresus: image: "bnjbvr/kresus:0.23.5" restart: unless-stopped ports: - 9876:9876 depends_on: - db env_file: - path: ./.env required: true volumes: postgres_data: EOF Alors quelques commentaires sur mes choix (différences avec le [[https://framagit.org/kresusapp/kresus/-/blob/main/support/docker-compose/docker-compose.yml?ref_type=heads|compose officiel de la documentation]]): - Je n'ai pas repris l'utilisation d'apprise pour les notifications. Je n'en ai pas besoin. - J'ai supprimé la partie proxy via traefik car je possède déjà une stack équivalente - Je n'ai un volume persistent que pour la base de données et pas pour kresus car je n'importe rien via woob. - Je passe toutes les variables d'environmment via un fichier d'env obligatoire comme ci-dessous. cat << EOF > .env POSTGRES_USER=kresus POSTGRES_PASSWORD=OeSoh9Dob6phahWa POSTGRES_DB=kresus LOCAL_USER_ID=1000 KRESUS_DB_TYPE=postgres KRESUS_DB_HOST=db KRESUS_DB_PORT=5432 KRESUS_DB_USERNAME=kresus KRESUS_DB_PASSWORD=OeSoh9Dob6phahWa KRESUS_APPRISE_API_BASE_URL=http://apprise:8000 KRESUS_EMAIL_TRANSPORT=smtp KRESUS_EMAIL_FROM=kresus@domain.com KRESUS_EMAIL_HOST=localhost KRESUS_EMAIL_PORT=25 KRESUS_EMAIL_USER=kresus KRESUS_EMAIL_PASSWORD=kresus EOF Ensuite on peut lancer la stack et tester l'application localement sudo docker compose up -d firefox http://localhost:9876 ===== Mon retour d'expérience ===== - Ça fait le boulot et ça me permet d'héberger mes données où je le souhaite et du coup :-) :-) - Ça a l'air d'être bien ergonomique sur téléphones intelligents et c'est très apprécié. - Mes principales attentes fonctionnelles étaient de pouvoir: - catégoriser les entrées/sorties d'argent - visualiser le solde du compte dans le temps - rechercher des dépenses comme je le souhaite avec des différents critères de sélection (dates, libellés, catégories...) - Et de ce point de vue tout est là donc c'est pourquoi j'ai mis cette application en production. 8-) - Les points à améliorer que je suggère: - Pouvoir créer des comptes comme on le souhaite. Par défaut l'application crée 3 comptes on ne peut que les supprimer ou les renommer. Assez bizarre 8-o - Pouvoir gérer un budget par an plutôt que par mois. - Faire des vues personnalisées en mode lecture seule. - Dernière et non des moindres: lorsqu'on définit une opération récurrente, alors proposer de les pré-créer pour l'année en cours pour que cela impacte le solde prévisionnel. Merci en tout cas aux développeurs pour la belle initiative.