QuickBill
SaaS gestion factures freelances: scan OCR Tesseract, dashboard, Prisma SQLite, Next.js
Technologies
Documentation du projet
QuickBill - SaaS de gestion de factures pour freelances
QuickBill est une application web moderne qui permet aux freelances de scanner leurs factures et de gérer leur comptabilité facilement.
🚀 Fonctionnalités
✨ Scan de factures avec OCR
- Upload de factures (PDF, JPG, PNG)
- Reconnaissance automatique du texte avec Tesseract.js
- Extraction automatique des informations (montant, date, vendeur, numéro de facture)
- Interface drag & drop intuitive
📊 Dashboard intelligent
- Vue d'ensemble des finances
- Statistiques en temps réel
- Factures récentes avec statuts
- Graphiques de performance
👥 Gestion des clients
- Base de données clients complète
- Historique des factures par client
- Informations de contact centralisées
💰 Gestion des factures
- Création de factures professionnelles
- Suivi des statuts (brouillon, envoyée, payée, en retard)
- Calcul automatique des taxes
- Export PDF
📈 Rapports et analyses
- Chiffre d'affaires mensuel/annuel
- Taux de conversion des factures
- Analyse des dépenses
- Prévisions financières
🛠️ Technologies utilisées
- Frontend: Next.js 14, React 18, TypeScript
- Styling: Tailwind CSS
- Base de données: Prisma ORM avec SQLite
- OCR: Tesseract.js pour la reconnaissance de texte
- UI: Lucide React pour les icônes
- Formulaires: React Hook Form avec validation Zod
🚀 Installation
git clone https://github.com/votre-username/quickbill.git
cd quickbill
npm install
# Créer le fichier .env
echo 'DATABASEURL="file:./dev.db"' > .env
Initialiser la base de données
npx prisma generate
npx prisma db push
npm run dev
http://localhost:3000
📁 Structure du projet
quickbill/
├── app/ # Pages Next.js (App Router)
│ ├── globals.css # Styles globaux
│ ├── layout.tsx # Layout principal
│ └── page.tsx # Page d'accueil
├── components/ # Composants React
│ ├── InvoiceScanner.tsx # Scanner de factures
│ ├── DashboardStats.tsx # Statistiques dashboard
│ └── RecentInvoices.tsx # Liste factures récentes
├── prisma/ # Configuration base de données
│ └── schema.prisma # Schéma Prisma
├── public/ # Assets statiques
└── package.json # Dépendances
🎯 Utilisation
Scanner une facture
Gérer les clients
- Ajouter de nouveaux clients avec leurs informations
- Consulter l'historique des factures par client
- Modifier les informations de contact
Créer des factures
- Sélectionner un client
- Ajouter les prestations/services
- Calcul automatique des taxes
- Génération de factures PDF professionnelles
🔧 Configuration avancée
Variables d'environnement
DATABASEURL="file:./dev.db"
NEXTAUTHSECRET="your-secret-key"
NEXTAUTHURL="http://localhost:3000"
Déploiement
Le projet est prêt pour le déploiement sur :- Vercel (recommandé)
- Netlify
- Railway
- AWS Amplify
🤝 Contribution
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)📄 Licence
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.
🆘 Support
Pour toute question ou problème :
- Ouvrir une issue sur GitHub
- Contacter l'équipe de développement
QuickBill - Simplifiez votre comptabilité freelance ! 💼✨
Code source
Projet open source hébergé sur GitHub.
- 0 étoiles
- 0 forks
- TypeScript
Projets suggeres
ClientCRM
CRM simple pour PME: contacts, opportunites, suivi - Next.js React TypeScript
WebDeliveryTrack
Suivi de livraisons pour PME logistique - tableau de bord, colis, chauffeurs - Next.js TypeScript
WebDistributionJournaux
Application distribution de journaux - Node.js MongoDB, zones et seed
WebDuelDeDame
Jeu de dames en ligne temps reel, Next.js et NestJS, design patterns (Strategy, Factory)