A personal business dashboard to track daily sales, expenses, stock, and due payments — built with vanilla HTML/CSS/JS and Firebase Realtime Database.
- Today Tab — Add sales with amount, profit (auto-calculates cost), and channel (Website / Telegram). Shows live summary cards.
- History Tab — Filter past sales by date and channel.
- Due Tab — Track WhatsApp and Telegram dues with a full log.
- Stock Tab — Monitor inventory value with add/remove/set actions.
- Expense Tab — Log expenses by category with daily/monthly/all-time filters.
- Reports Tab — Weekly, monthly, and yearly profit breakdown with bar charts.
- Trash Tab — Deleted items are recoverable for 30 days.
- Settings Tab — Change PIN and danger zone to wipe all data.
- HTML / CSS / JavaScript (no framework)
- Firebase Realtime Database (sync across devices)
- Google Fonts — Space Mono + DM Sans
Hosted via GitHub Pages:
https://ashikscript.github.io/business-dashboard/
- Clone or download this repository
- Open
app.jsand replace thefirebaseConfigobject with your own Firebase project credentials - Deploy to GitHub Pages or any static host
const firebaseConfig = {
apiKey: "YOUR_API_KEY",
authDomain: "YOUR_PROJECT.firebaseapp.com",
databaseURL: "https://YOUR_PROJECT-default-rtdb.firebaseio.com",
projectId: "YOUR_PROJECT_ID",
storageBucket: "YOUR_PROJECT.appspot.com",
messagingSenderId: "YOUR_SENDER_ID",
appId: "YOUR_APP_ID"
};- Push all files (
index.html,app.js,style.css) to a GitHub repository - Go to Settings → Pages
- Set source to
mainbranch, root folder - Save — your dashboard will be live in a minute
1234
Change it from the Settings tab after first login.
- All data is stored in Firebase and synced in real time
- Session stays active for 7 days without re-entering PIN
- Deleted items auto-expire from Trash after 30 days
- Dashboard is designed for single-user/owner use only
Personal use only. Not for redistribution.