nexboard
v1.2.0
Published
Dashboard moderne de gestion d'entreprise — clients, projets, devis, factures
Maintainers
Readme
NexBoard
🇬🇧 English
About NexBoard
NexBoard is a modern business management dashboard designed to provide a clean, fast and intuitive interface for managing everyday business operations.
The project uses a client-server architecture and is designed to remain lightweight, modular and easy to install on Windows, Linux, macOS or a VPS.
Preview
Logo:
docs/images/logo.png(from Logo NexBoard - Blanc.png).
Features
- 📊 Dashboard with key statistics and charts
- 👥 Customer management (CRUD)
- 📁 Project management (CRUD)
- 🧾 Quotes and invoices (CRUD + email send)
- 🖨️ Printable document preview (save as PDF via browser)
- 🔁 Convert quote → invoice
- 🗂️ Detail sheets with quick actions
- 📈 Charts and analytics (Recharts)
- 🔎 Search and filters
- 🌙 Light and dark mode
- 🎨 Logo, brand color and multi-language UI
- 🔔 In-app notifications
- ✉️ SMTP configuration and test emails
- ⚙️ Application settings
- 📤 CSV export and SQLite backup
- 📱 Responsive interface
- 💾 Local SQLite database (auto-created)
- 🚀 Simple installation (
npm i nexboard/npx nexboard)
Screenshots
Dashboard
Customers
Projects
Quotes
Invoices
Screenshots:
Dashboard.png,Clients.png,Project.png,Devis.png,Factures.png.
Versioning
NexBoard follows Semantic Versioning (MAJOR.MINOR.PATCH).
- Changelog:
CHANGELOG.md - GitHub Releases: https://github.com/nexyrosweb/nexboard/releases
Tech Stack
Frontend
- React
- Vite
- TypeScript
- CSS
- Lucide Icons
- Recharts
Backend
- Node.js 22+
- Fastify
- SQLite (
node:sqlite)
Project Structure
nexboard/
├── client/
│ ├── public/
│ ├── src/
│ │ ├── api/
│ │ ├── components/
│ │ ├── context/
│ │ ├── i18n/
│ │ ├── layouts/
│ │ ├── pages/
│ │ ├── styles/
│ │ └── types/
│ └── package.json
│
├── server/
│ ├── bin/
│ ├── src/
│ │ ├── db/
│ │ ├── routes/
│ │ └── services/
│ ├── data/ # SQLite + uploads (local)
│ └── package.json # publishable as `nexboard`
│
├── docs/
│ └── images/
│ ├── logo.png
│ ├── Logo NexBoard - Blanc.png
│ ├── Logo NexBoard - Noir.png
│ ├── Dashboard.png
│ ├── Clients.png
│ ├── Project.png
│ ├── Devis.png
│ └── Factures.png
│
├── .env.example
├── .gitignore
├── LICENSE
├── package.json
└── README.mdInstallation
Requirements
- Node.js 22+
- npm
Quick install (npm)
Install the package:
npm i nexboardOr globally:
npm i -g nexboardThen start NexBoard:
npx nexboardIf installed globally:
nexboardOpen http://localhost:3001.
Install from source (development)
- Git
Clone the repository:
git clone https://github.com/nexyrosweb/nexboard.gitOpen the project:
cd nexboardInstall all dependencies:
npm installEnvironment
Create your local environment file from .env.example.
Linux / macOS:
cp .env.example .envWindows (PowerShell):
Copy-Item .env.example .envMain variables:
| Variable | Description | Default |
|----------|-------------|---------|
| PORT | API / production port | 3001 |
| HOST | Listen address (0.0.0.0 for VPS) | 0.0.0.0 |
| DATABASE_PATH | Relative SQLite path (from server/) | ./data/nexboard.db |
Development
Start NexBoard in development mode:
npm run devClient and server are managed through npm workspaces.
Production
npm run build
npm startDatabase
NexBoard uses SQLite to keep installation simple and portable.
No external MySQL or PostgreSQL server is required.
The local database is created automatically on first start, with demo data.
Goals
NexBoard is built around a few core principles:
- Simple installation
- Clean architecture
- Reusable components
- Modular code
- Minimal unnecessary dependencies
- Responsive design
- Easy deployment
- Maintainable codebase
Roadmap
- [x] Project architecture
- [x] Dashboard interface
- [x] Customer management
- [x] Project management
- [x] Quotes
- [x] Invoices
- [x] Notifications
- [x] SMTP / email sending
- [x] Branding (logo & colors)
- [x] Multi-language UI
- [x] API
- [x] Dashboard customization
- [ ] Authentication
- [ ] PDF export
- [ ] User management
- [ ] Roles and permissions
- [ ] Advanced analytics
Contributing
Contributions, suggestions and feedback are welcome.
You can open an Issue to report a bug, suggest an improvement or propose a new feature.
License
This project is licensed under the MIT License.
See the LICENSE file for more information.
🇫🇷 Français
À propos de NexBoard
NexBoard est un dashboard moderne de gestion d’entreprise permettant de centraliser les opérations quotidiennes dans une interface simple, rapide et intuitive.
Le projet utilise une architecture client-serveur et est pensé pour rester léger, modulaire et facilement installable sur Windows, Linux, macOS ou un VPS.
Aperçu
Logo :
docs/images/logo.png(issu de Logo NexBoard - Blanc.png).
Fonctionnalités
- 📊 Tableau de bord avec statistiques et graphiques
- 👥 Gestion des clients (CRUD)
- 📁 Gestion des projets (CRUD)
- 🧾 Devis et factures (CRUD + envoi e-mail)
- 🖨️ Aperçu document imprimable (PDF via navigateur)
- 🔁 Conversion devis → facture
- 🗂️ Fiches détail avec actions rapides
- 📈 Graphiques et analytics (Recharts)
- 🔎 Recherche et filtres
- 🌙 Mode clair et sombre
- 🎨 Logo, couleur de marque et interface multilingue
- 🔔 Notifications in-app
- ✉️ Configuration SMTP et e-mails de test
- ⚙️ Paramètres de l’application
- 📤 Export CSV et sauvegarde SQLite
- 📱 Interface responsive
- 💾 Base de données SQLite locale (création auto)
- 🚀 Installation simple (
npm i nexboard/npx nexboard)
Captures d’écran
Tableau de bord
Clients
Projets
Devis
Factures
Captures :
Dashboard.png,Clients.png,Project.png,Devis.png,Factures.png.
Versioning
NexBoard suit le Semantic Versioning (MAJOR.MINOR.PATCH).
- Journal des versions :
CHANGELOG.md - Releases GitHub : https://github.com/nexyrosweb/nexboard/releases
Technologies
Frontend
- React
- Vite
- TypeScript
- CSS
- Lucide Icons
- Recharts
Backend
- Node.js 22+
- Fastify
- SQLite (
node:sqlite)
Structure du projet
nexboard/
├── client/
│ ├── public/
│ ├── src/
│ │ ├── api/
│ │ ├── components/
│ │ ├── context/
│ │ ├── i18n/
│ │ ├── layouts/
│ │ ├── pages/
│ │ ├── styles/
│ │ └── types/
│ └── package.json
│
├── server/
│ ├── bin/
│ ├── src/
│ │ ├── db/
│ │ ├── routes/
│ │ └── services/
│ ├── data/ # SQLite + uploads (local)
│ └── package.json # publiable sous `nexboard`
│
├── docs/
│ └── images/
│ ├── logo.png
│ ├── Logo NexBoard - Blanc.png
│ ├── Logo NexBoard - Noir.png
│ ├── Dashboard.png
│ ├── Clients.png
│ ├── Project.png
│ ├── Devis.png
│ └── Factures.png
│
├── .env.example
├── .gitignore
├── LICENSE
├── package.json
└── README.mdInstallation
Prérequis
- Node.js 22+
- npm
Installation rapide (npm)
Installez le package :
npm i nexboardOu en global :
npm i -g nexboardPuis lancez NexBoard :
npx nexboardSi installé en global :
nexboardOuvrez http://localhost:3001.
Installation depuis les sources (développement)
- Git
Clonez le dépôt :
git clone https://github.com/nexyrosweb/nexboard.gitAccédez au projet :
cd nexboardInstallez toutes les dépendances :
npm installConfiguration
Créez votre fichier d’environnement à partir de .env.example.
Linux / macOS :
cp .env.example .envWindows (PowerShell) :
Copy-Item .env.example .envVariables principales :
| Variable | Description | Défaut |
|----------|-------------|--------|
| PORT | Port API / production | 3001 |
| HOST | Adresse d’écoute (0.0.0.0 pour un VPS) | 0.0.0.0 |
| DATABASE_PATH | Chemin relatif SQLite (depuis server/) | ./data/nexboard.db |
Développement
Lancez NexBoard en mode développement :
npm run dev- Interface : http://localhost:5173
- API : http://localhost:3001
Le client et le serveur sont gérés via les npm workspaces.
Production
npm run build
npm startBase de données
NexBoard utilise SQLite afin de conserver une installation simple et portable.
Aucun serveur MySQL ou PostgreSQL externe n’est nécessaire.
La base locale est créée automatiquement au premier lancement, avec des données de démonstration.
Objectifs
NexBoard repose sur plusieurs principes :
- Installation simple
- Architecture claire
- Composants réutilisables
- Code modulaire
- Peu de dépendances inutiles
- Interface responsive
- Déploiement facile
- Code facilement maintenable
Feuille de route
- [x] Architecture du projet
- [x] Interface du dashboard
- [x] Gestion des clients
- [x] Gestion des projets
- [x] Devis
- [x] Factures
- [x] Notifications
- [x] SMTP / envoi d’e-mails
- [x] Branding (logo & couleurs)
- [x] Interface multilingue
- [x] API
- [x] Personnalisation du dashboard
- [ ] Authentification
- [ ] Export PDF
- [ ] Gestion des utilisateurs
- [ ] Rôles et permissions
- [ ] Statistiques avancées
Contribution
Les contributions, suggestions et retours sont les bienvenus.
Vous pouvez ouvrir une Issue pour signaler un problème, proposer une amélioration ou suggérer une nouvelle fonctionnalité.
Licence
Ce projet est distribué sous licence MIT.
Consultez le fichier LICENSE pour plus d’informations.
