Demo explorer
A single map of the whole app — 17 screens across staff and portal, what each one does, and the buttons that live on it. Sign in below, then open any page to investigate it. Bookmark/demo to come back here.
npm run db:seed.Sign in to explore
No demo accounts exist yet. Seed demo data with npm run db:seed, or sign in on the login screen.
Demo accounts
| Role | Password | |
|---|---|---|
| Admin | admin@hourflow.local | admin123! |
| Manager | manager@hourflow.local | manager123! |
| Technician | tech1@hourflow.local / tech2@hourflow.local | tech123! |
| Customer portal | portal@acme.example | portal123! |
Global controls
- Global searchPress Ctrl / ⌘ + K anywhere in the staff app to search customers, tickets, time entries and invoices.
- Timer chipThe running-timer pill in the top bar ticks live and links back to the Time page.
- Notifications bellTop-bar bell shows the unread count; the sidebar item badges it too.
- Sign outTop-right on every page — returns you here-ish (the login screen).
Overview
Where the whole operation is summarised.
Hours today/week/month, retainer capacity meters, hour-bank balances, overage, technician utilization, revenue and hours charts, latest alerts, active timers.
- •Open a customer from a capacity row
- •‘View all’ jumps to Notifications
- •Charts show tooltips on hover
Work
Logging and approving service time.
Your own time: run the live timer or log time by hand, then submit entries for approval.
- •Start / Pause / Resume / Stop the timer
- •‘Log time’ opens the manual-entry modal
- •Submit, edit or delete a draft entry
The manager queue of submitted entries. Approving runs the allocation engine (bank → retainer → overage/hourly).
- •Approve an entry
- •Reject with a required reason
Clients
Customers, contracts and prepaid hour banks.
Every customer with this month’s capacity meter and bank balances.
- •‘New customer’ (Manager+)
- •Toggle archived customers
- •Open a customer profile
Money
Invoicing, payments and reporting.
Invoice list plus uninvoiced hour-bank purchases.
- •‘Generate monthly invoices’ (per customer or all — idempotent)
- •‘Create invoice’ for a bank purchase
- •‘Export CSV’
- •Filter by status
The printable invoice document and its actions.
- •Mark as sent
- •Record a payment
- •Void the invoice
- •Print / save as PDF
System
Alerts, audit trail and configuration.
Capacity, hour-bank, expiry and renewal alerts.
- •‘Run checks now’ evaluates every rule
- •Mark one / all read
Every mutation — who, what, when — with entity and text filters.
- •Filter by entity
- •Filter by action/summary text
Customer portal
The read-only view your customers get. Sign in as the portal account to explore.
The customer’s balances, monthly allowance meter and recent work.
- •Read-only
Approved and billed work, filterable by month.
- •Filter by month via the URL (?month=YYYY-MM)
The customer’s own invoices and payment status.
- •Open an invoice
Design system
The building blocks every page is assembled from.
Buttons
Status badges
Form controls
Capacity meter
Stat tiles
Empty state
Nothing here yet
This is how empty tables and lists read.