6.6 KiB
title: Monetr created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, budgeting, go, golang, finance, suivi, budget] confidence: medium contested: false sources: [https://selfh.st/apps/?tag=budgeting, https://github.com/monetr/monetr, https://monetr.app/]
Monetr 🪙
Application de suivi de finances personnelles écrite en Go — performante, légère, binaire unique. Approche pragmatique de l'envelope budgeting avec une UX moderne et un backend solide.
| Métadonnée | Valeur |
|---|---|
| Site web | https://monetr.app/ |
| GitHub | https://github.com/monetr/monetr |
| License | AGPL-3.0 |
| Langage | Go (backend), TypeScript/React (frontend) |
| Étoiles | ⭐46 |
| Dernière MAJ | 2026-04-30 |
| Catégorie | cat-budgeting |
Description
Monetr est une application de suivi de finances personnelles relativement jeune mais techniquement solide, écrite en Go pour le backend (avec React/TypeScript pour le frontend). Le projet se positionne sur l'envelope budgeting (méthode enveloppe) avec une approche moderne, multi-utilisateurs, et un focus sur la performance (Go = binaire léger, démarrage rapide, faible consommation RAM).
Les fonctionnalités principales : comptes multiples (chèque, épargne, cartes, crédit, prêt), transactions avec catégorisation, enveloppes par catégorie avec allocation mensuelle, soldes reportés d'un mois à l'autre, règles d'auto-catégorisation, revenus récurrents (salaires, freelances), dépenses récurrentes (abonnements, factures), objectifs d'épargne (sinking funds) avec progression, tableau de bord avec soldes par compte/enveloppe, graphiques (cash flow, répartition), import CSV depuis les banques, API REST documentée, multi-utilisateurs natif (un serveur peut héberger plusieurs budgets familiaux).
L'architecture est classique et efficace : Go backend (probablement avec chi/gin + sqlx/sqlc), PostgreSQL comme base, React/TypeScript frontend. L'avantage Go : binaire unique autoportant (~20 Mo), démarrage en <1s, consommation mémoire faible (~50-100 Mo pour un usage normal), idéal pour un Raspberry Pi ou un petit VPS. L'inconvénient : projet jeune (~46⭐), moins de retours utilisateurs que Firefly ou Actual — à surveiller.
Monetr est particulièrement adapté aux familles ou colocations grâce au multi-utilisateurs natif, et aux utilisateurs qui veulent un binaire Go léger plutôt qu'une stack JS/Node complète.
Installation
Via Docker (recommandé)
# docker-compose.yml
services:
monetr:
image: ghcr.io/monetr/monetr:latest
container_name: monetr
restart: unless-stopped
depends_on:
db:
condition: service_healthy
ports:
- "8080:8080"
environment:
- MONETR_DB_HOST=db
- MONETR_DB_PORT=5432
- MONETR_DB_NAME=monetr
- MONETR_DB_USER=monetr
- MONETR_DB_PASSWORD=*** - MONETR_LISTEN=0.0.0.0:8080
- MONETR_PUBLIC_URL=https://budget.example.com
- MONETR_SECURE_COOKIES=true
healthcheck:
test: ["CMD", "wget", "--spider", "-q", "http://localhost:8080/health"]
interval: 30s
timeout: 10s
retries: 3
db:
image: postgres:16-alpine
container_name: monetr-db
restart: unless-stopped
environment:
- POSTGRES_DB=monetr
- POSTGRES_USER=monetr
- POSTGRES_PASSWORD=*** volumes:
- monetr-db:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U monetr -d monetr"]
interval: 10s
timeout: 5s
retries: 10
volumes:
monetr-db:
⚠️ Vérifier le tag exact sur le GHCR et la nomenclature des variables d'environnement (elles peuvent avoir changé).
Installation manuelle (Go)
- Pré-requis : Go 1.22+, Node.js 20+ (frontend build), PostgreSQL 14+.
git clone https://github.com/monetr/monetr.git && cd monetr- Build backend :
go build -o monetr ./cmd/monetr - Build frontend :
cd web && npm install && npm run build && cd .. - Configurer
config.yamlou variables d'environnement (DB, secret, URL). - Migrations :
./monetr migrate up(selon la version). ./monetr serve(production).- Reverse proxy Nginx/Caddy en front.
Configuration
- Premier lancement : créer le compte owner via l'UI d'inscription.
- MONETR_SECURE_COOKIES=true : obligatoire en HTTPS.
- MONETR_PUBLIC_URL : URL externe utilisée pour les liens/OAuth.
- Comptes : créer un compte par produit bancaire.
- Enveloppes : allocation mensuelle, le solde non utilisé roule.
- Récurrences : configurer salaires, abonnements.
- HTTPS : obligatoire via reverse proxy.
- Backups :
pg_dumpquotidien + copie du volume (uploads éventuels).
Alternatives
Open Source
- app-actual-budget — référence local-first (TypeScript)
- app-firefly-iii — gestion complète (PHP)
- app-sure — plateforme Elixir moderne
- app-myfin — alternative Python
- app-budget-board — dashboard TypeScript
- Buckwheat / Cashcog — envelope budgeting Python
- Maybe / Perfin — projets alternatifs (Ruby/Go)
Propriétaires
- YNAB — référence du zero-based (~14$/mois)
- Monarch Money — UX premium (~99$/an)
- Rocket Money — focus souscription
- PocketGuard — mobile-first US
Sécurité
- HTTPS obligatoire via reverse proxy.
- MONETR_DB_PASSWORD : mot de passe fort, généré aléatoirement, user PostgreSQL non-superutilisateur.
- Cookies sécurisés :
MONETR_SECURE_COOKIES=trueen production HTTPS. - JWT/Sessions : tokens stockés côté serveur, expiration régulière.
- 2FA : à confirmer selon la roadmap, sinon Authelia/Authentik en front.
- Backups 3-2-1 :
pg_dump+ volumes, tester la restauration. - Updates Go : Go est rétrocompatible, suivre la branche stable.
- CSP et headers : via reverse proxy (Caddy/Traefik).
- Logs : logs structurés Go (slog, zap), monitorer via Grafana Loki ou équivalent.
Ressources
- Site officiel : https://monetr.app/
- GitHub : https://github.com/monetr/monetr
- Documentation : https://docs.monetr.app/
- selfh.st : https://selfh.st/apps/?tag=budgeting
Pages Liées
- cat-budgeting — catégorie parente
- app-actual-budget — concurrent direct (envelope aussi)
- app-firefly-iii — référence du marché (PHP)
- app-sure — alternative Elixir
- app-myfin — alternative Python
- recettes-docker-compose — templates de déploiement
- securisation-home-lab — bonnes pratiques