Initial vault setup
This commit is contained in:
@@ -0,0 +1,133 @@
|
||||
---
|
||||
title: Spliit
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, budgeting, partage, amis, sveltekit, collocation, depenses]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=budgeting, https://github.com/spliit-app/spliit-web, https://spliit.app/]
|
||||
---
|
||||
|
||||
# Spliit 🤝
|
||||
|
||||
> Application de **partage de dépenses** entre amis, colocs, famille, ou en voyage. Stack **SvelteKit** légère, sans dépendance bancaire, focalisée sur l'essentiel : créer un groupe, ajouter des dépenses, équilibrer en fin de course.
|
||||
|
||||
| Métadonnée | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | https://spliit.app/ |
|
||||
| **GitHub** | https://github.com/spliit-app/spliit-web |
|
||||
| **License** | AGPL-3.0 |
|
||||
| **Langage** | SvelteKit (TypeScript) |
|
||||
| **Étoiles** | ⭐431 |
|
||||
| **Dernière MAJ** | 2026-05-15 |
|
||||
| **Catégorie** | [[cat-budgeting]] |
|
||||
|
||||
## Description
|
||||
|
||||
Spliit est une application **minimaliste de partage de dépenses** entre amis, colocs, ou groupes ponctuels (vacances, événements). Inspirée de Splitwise, elle reprend les concepts essentiels : **créer un groupe**, **inviter des participants**, **enregistrer les dépenses** (qui a payé, pour qui, combien, comment split), puis **visualiser qui doit quoi à qui** avec une **séquence de remboursements optimisée** (algorithme de minimisation des transactions).
|
||||
|
||||
Les fonctionnalités clés incluent : **groupes multiples** (un par contexte : colocs, vacances, soirée), **modes de split** (égal, parts personnalisées, pourcentages, parts fixes, par montant exact), **catégorisation** des dépenses (alimentation, logement, transport, loisirs, etc.), **devises** par groupe avec taux de change, **historique** et **statistiques** par catégorie/groupe, **export CSV**, **statut de remboursement** (paid / unpaid), **URLs d'invitation** par groupe (pas de compte à créer pour les participants — juste un pseudo), et **recherche/filtres**.
|
||||
|
||||
L'**architecture** est volontairement simple : une app **SvelteKit** avec base **SQLite** (ou PostgreSQL), pas de Redis ni de worker complexe. Le mode "URL d'invitation" évite l'inscription obligatoire des participants (un simple lien + pseudo suffit) — c'est l'un de ses gros avantages sur Splitwise. L'**UX** est soignée, en anglais principalement (français partiel via i18n).
|
||||
|
||||
Spliit est particulièrement adapté aux **colocations**, **voyages entre amis**, **soirées/events**, **repas partagés**, **projets collaboratifs** (avec dépenses partagées), bref tous les cas où un **Splitwise-like** est nécessaire sans tracking bancaire.
|
||||
|
||||
## Installation
|
||||
|
||||
### Via Docker (recommandé)
|
||||
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
services:
|
||||
spliit:
|
||||
image: ghcr.io/spliit-app/spliit-web:latest
|
||||
container_name: spliit
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "3000:3000"
|
||||
environment:
|
||||
- DATABASE_URL=file:/data/spliit.db
|
||||
- NEXTAUTH_SECRET=ChangeM3_NextAuthSecret
|
||||
- NEXTAUTH_URL=https://spliit.example.com
|
||||
volumes:
|
||||
- spliit-data:/data
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--spider", "-q", "http://localhost:3000/"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
volumes:
|
||||
spliit-data:
|
||||
```
|
||||
|
||||
> ⚠️ Vérifier la dernière image disponible sur le [GitHub Container Registry](https://github.com/spliit-app/spliit-web/pkgs/container/spliit-web) (le tag peut être `latest` ou versionné).
|
||||
|
||||
### Installation manuelle (Node.js)
|
||||
|
||||
1. **Pré-requis** : Node.js 20+, npm ou pnpm.
|
||||
2. `git clone https://github.com/spliit-app/spliit-web.git && cd spliit-web`
|
||||
3. `npm install` (ou `pnpm install`)
|
||||
4. Configurer `.env` :
|
||||
```env
|
||||
DATABASE_URL=file:./data/spliit.db
|
||||
NEXTAUTH_SECRET=ChangeM3_NextAuthSecret
|
||||
NEXTAUTH_URL=http://localhost:3000
|
||||
```
|
||||
5. Initialiser la DB : `npx prisma migrate deploy`
|
||||
6. `npm run build && npm start` (production) ou `npm run dev` (développement).
|
||||
7. Reverse proxy Nginx/Caddy/Traefik en front (HTTPS obligatoire).
|
||||
|
||||
## Configuration
|
||||
|
||||
- **Premier lancement** : aucune inscription requise pour les participants (mode lien d'invitation).
|
||||
- **Création de groupe** : nom, devise, participants (pseudo, email optionnel), catégories.
|
||||
- **Dépenses** : titre, montant, payeur, date, catégorie, mode de split, participants concernés.
|
||||
- **Remboursements** : vue "balances" qui calcule automatiquement qui doit combien à qui, avec une **séquence de transferts minimisée**.
|
||||
- **Marquage** : possibilité de marquer un remboursement comme effectué (statut).
|
||||
- **Export** : CSV de l'historique des dépenses.
|
||||
- **HTTPS** : obligatoire via reverse proxy.
|
||||
- **Backup** : le fichier SQLite `spliit.db` est la base de données — le copier régulièrement (cron + rclone).
|
||||
|
||||
## Alternatives
|
||||
|
||||
### Open Source
|
||||
- [[app-actual-budget]] — budgeting personnel complet, partage de dépenses partiel
|
||||
- [[app-firefly-iii]] — finances personnelles, mais conçu pour un individu (groupes = niche)
|
||||
- [[app-expenseowl]] — suivi de dépenses minimaliste (mono-utilisateur)
|
||||
- **Splitwise** (propriétaire) — référence du marché
|
||||
- **Coscrip** / **Spliter** / **ShareMyCosts** — alternatives plus anciennes
|
||||
- **Nextcloud Cospend** — app Nextcloud de partage de dépenses (utilise l'API Nextcloud)
|
||||
|
||||
### Propriétaires
|
||||
- **Splitwise** — leader du marché, app mobile et web, freemium agressif
|
||||
- **Tricount** (populaire en Europe, propriété BNP Paribas) — très simple, intégré à WhatsApp
|
||||
- **Splid** / **Splito** — alternatives mobiles
|
||||
- **Tricount**, **KittySplit** — pour poker/games
|
||||
|
||||
## Sécurité
|
||||
|
||||
- **HTTPS obligatoire** via reverse proxy (Traefik/Caddy).
|
||||
- **Pas d'auth forte** par défaut : le mode "URL d'invitation" repose sur l'opacité des liens. Pour durcir : activer un reverse proxy auth (Authelia/Authentik).
|
||||
- **SQLite = fichier plat** : sécuriser les permissions (chmod 600) sur le volume `spliit-data`.
|
||||
- **Backups 3-2-1** : copier régulièrement le fichier `spliit.db` vers un stockage externe chiffré.
|
||||
- **Pas de connexion bancaire** : pas de credentials à protéger, mais aussi pas d'agrégation automatique.
|
||||
- **Validation des dépenses** : tout participant au groupe peut saisir des dépenses → confiance dans le groupe social.
|
||||
- **Anonymisation** : Spliit ne demande que des pseudos/emails, pas de KYC.
|
||||
- **Updates réguliers** : suivre la branche stable, regarder les notes de release (SvelteKit updates fréquentes).
|
||||
|
||||
## Ressources
|
||||
- Site officiel : https://spliit.app/
|
||||
- Démo en ligne : https://spliit.app/
|
||||
- GitHub : https://github.com/spliit-app/spliit-web
|
||||
- Documentation : https://github.com/spliit-app/spliit-web/blob/main/README.md
|
||||
- selfh.st : https://selfh.st/apps/?tag=budgeting
|
||||
|
||||
## Pages Liées
|
||||
- [[cat-budgeting]] — catégorie parente
|
||||
- [[app-actual-budget]] — budgeting individuel complémentaire
|
||||
- [[app-firefly-iii]] — finances personnelles complètes
|
||||
- [[app-expenseowl]] — suivi de dépenses simple (mono-utilisateur)
|
||||
- [[recettes-docker-compose]] — templates de déploiement
|
||||
- [[securisation-home-lab]] — bonnes pratiques
|
||||
Reference in New Issue
Block a user