Skip to content

kevinkenfack/cashx

Repository files navigation

CashX — Gestion complète des finances personnelles

License: MIT PRs Welcome Open Source Love

CashX Logo

CashX est une application open source orientée mobile (PWA) qui permet de suivre ses dépenses, ses revenus, ses comptes et ses objectifs d'épargne avec un tableau de bord moderne et des graphiques dynamiques. L'application supporte plusieurs devises locales (EUR, USD, XAF/XOF, NGN…), propose des notifications intelligentes et s'appuie sur Supabase pour la persistance et l'authentification.

cashx

✨ Fonctionnalités principales

  • 📊 Tableau de bord en temps réel : KPIs, graphiques et comparatifs mois par mois.
  • Suivi des revenus et dépenses : catégories personnalisables, filtres et rapports détaillés.
  • 💳 Gestion multi-comptes : banque, cash, mobile money, crypto, etc., avec alertes de solde.
  • 🎯 Objectifs d'épargne : progression visuelle, notifications à 50/75/100 %.
  • Calendrier financier & rapports avancés : vue agenda des transactions et exports.
  • 🌍 Support multi-devises : conversions natives (EUR, USD, XAF, XOF, NGN…).
  • 🔔 Notifications proactives : grosses dépenses, solde faible, objectif atteint.
  • 🌙 Thème sombre + PWA : installation sur mobile, mode hors ligne, responsive.
  • Authentification Supabase et politique de sécurité stricte.
  • 🧩 Open source : contributions bienvenues, code hébergé sur GitHub.

🛠 Stack technique

  • ⚛️ React 18 + TypeScript
  • Vite pour le bundling / HMR
  • 🎨 Tailwind CSS & shadcn/ui pour le design system
  • 🌗 next-themes pour la gestion dark/light
  • 🔥 Supabase (PostgreSQL, Auth, Storage, Edge Functions)
  • 📊 Recharts + composants Chart shadcn pour les visualisations
  • 🔄 @tanstack/react-query / hooks maison pour la data
  • 📱 PWA + Capacitor pour l'expérience mobile installable
  • 🧪 date-fns, zod, etc. pour les utilitaires

🚀 Démarrage rapide

Prérequis

  • Node.js 18+ et pnpm
  • Compte Supabase (projet + clés API)

Installation

git clone https://github.com/kevinkenfack/cashx.git
cd cashx
pnpm install

Configuration Supabase

Créer un fichier .env.local (ou .env) avec :

VITE_SUPABASE_URL=https://xxx.supabase.co
VITE_SUPABASE_ANON_KEY=xxx
SUPABASE_SERVICE_ROLE_KEY=xxx # facultatif pour scripts/migrations
VITE_SUPABASE_PROJECT_ID=xxx

Lancez ensuite les migrations et seeds si nécessaire :

npx supabase db push

Scripts utiles

pnpm dev         # mode développement
pnpm build       # build production
pnpm preview     # prévisualisation du build
pnpm test        # (si des tests sont ajoutés)

🤝 Contribuer

Les issues et PRs sont ouvertes ! Avant de proposer une fonctionnalité :

  1. Ouvrez une issue pour discuter de la proposition.
  2. Créez une branche (git checkout -b feature/ma-feature).
  3. Respectez l'UI/UX (Tailwind + shadcn + thème sombre).
  4. Ajoutez les migrations Supabase si besoin (supabase/migrations).
  5. Créez une Pull Request bien documentée.

📄 Licence

CashX est distribué sous licence MIT. Consultez le fichier LICENSE pour plus de détails.

🙏 Remerciements

  • React pour l'écosystème et la communauté.
  • Vercel pour l'hébergement et les outils DX.
  • shadcn/ui pour la base de composants.
  • Supabase pour l'infrastructure backend.
  • La communauté open source qui contribue à améliorer l'app.

Fait avec ❤️ pour aider chacun à maîtriser ses finances.

About

CashX est une application web open source de gestion de budget et de suivi des dépenses personnelles.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages