Overview
Business Overview
All segments, rolled into one P&L
Just a dashboard — nothing to fill in. Come back here anytime to check your totals.
Revenue & Profit by Segment
Segment Breakdown
Recent Activity
| Date | Segment | Description | Revenue | Cost | Profit |
|---|
Daily Till
Log each day's till — food cost, labor, overhead
1. Fill in today's numbers → 2. Click Add → 3. See it in the table below.
| Date | Sales | Food | Labor | Overhead | Profit | Margin | Notes |
|---|
Catering Jobs
Track catering revenue against food, staffing & delivery cost
1. Fill in the job details and numbers → 2. Click Add → 3. It appears in the table below.
| Date | Client | Guests | Revenue | Cost | Profit | Margin |
|---|
Menu Catalog
Fixed menu bundles you can quote a catering job against
1. Pick or type a category → 2. Fill in the item → 3. Click Add Item.
| Item Category | Item Name | Description | Price | Unit | Dietary / Allergen Tags |
|---|
Menu Catalog
Fixed menu bundles you can quote a booking against
1. Pick or type a category → 2. Fill in the item → 3. Click Add Item.
| Item Category | Item Name | Description | Price | Unit | Dietary / Allergen Tags |
|---|
Prep Cost Analysis
What each catalog item actually costs to prepare — so profit per item, and per event, is never a guess
Enter what each catalog item actually costs to make — it saves automatically as you type, no submit button needed.
Prep Cost per Item
Set the prep cost for each catalog item. Profit and margin update automatically as soon as you save.
| Category | Item | Unit | Selling Price | Prep Cost | Profit / Item | Margin |
|---|
Want the full revenue and profit picture for a specific event — including labor and other costs, broken down by day? That view lives on its own page now.
Revenue Reports
The full financial picture for one event — revenue, every cost, and true profit, broken down by day for multi-day events
Pick an event from the dropdown to see its full financial picture — nothing to fill in, just browse.
Event Food Tagging
Tag catalog items to a booking — in bulk, or one at a time with a custom quantity or discount
1. Pick a booking → 2. Check off the items served → 3. Click Assign — or add one at a time with a custom quantity below.
Quick-Tag Multiple Items to an Event
Search, check off everything for this event, and assign them all in one click — much faster than adding one at a time. Every item checked gets the default quantity below with no discount; fine-tune individual quantities or discounts afterward in the table below or in Admin Panel.
Add One Item Manually
Use this when a single item needs a custom quantity or discount right away, instead of tuning it afterward.
Why this prevents price mismatches
Every event references the catalog item by ID, not by a copied price. If you ever update an item's base price in the catalog, every event using it reflects the new price automatically — nothing gets frozen at an old, possibly wrong number. The only way one event pays differently than another for the same item is the explicit discount you set right here, which always shows next to the base price so it's never hidden or accidental.
Want to see everything tagged to this event, grouped and totaled by category? That view lives on its own page now.
Orders & Bookings
Active list of upcoming and past events — customer details, guest counts, status
1. Fill in the booking form → 2. Click Add → 3. Update its status and details from the table as things change.
Leave End Date blank for a single-day event. Set it to mark a booking as spanning multiple days — food tagging and prep planning can then be assigned to specific days within that range. Revenue and food cost aren't entered here — tag food items to this event, and see the real numbers under Revenue Reports.
| Date(s) | Event | Customer | Guests | Delivery | Status | Labor Cost | Other Cost |
|---|
Event Summaries
Pick an event to see everything tagged to it, grouped by category, with pricing and discounts
Pick an event from the dropdown to see everything tagged to it, grouped by category — nothing to fill in.
Inventory & Prep Planning
Shopping and prep lists tied to a specific booking, with waste tracking
1. Pick a booking → 2. Add what needs to be bought or prepped → 3. Check items off as you go.
| Booking | Day | Ingredient | Quantity | Cost | Status | Notes |
|---|
Invoicing & Billing
Quotes, deposits, final bills, and payment status per booking
Pick a booking, then fill in the quote, deposit, and payment status — update it any time as things change.
| Booking | Quote | Deposit | Final | Staff Add-on | Delivery Add-on | Payment Status |
|---|
Stall Bookings
Track stalls given out to vendors at festivals, gatherings, and events — who's in, what they owe, and where
1. Fill in the festival and vendor details → 2. Click Add. A multi-day date range creates one booking per day automatically.
Leave End Date blank for a single-day booking. Set it for a multi-day festival — this creates a separate booking for each day in that range automatically, so each day can be tracked and have its own menu items tagged independently.
| Festival / Event | Date(s) | Location | Vendor | Contact | Stall # | Stall Fee | Payment Status | Notes |
|---|
Menu Catalog
Fixed menu bundles you can quote a stall booking against
1. Pick or type a category → 2. Fill in the item → 3. Click Add Item.
| Item Category | Item Name | Description | Price | Unit | Dietary / Allergen Tags |
|---|
Stall Food Tagging
Tag catalog items to a stall booking — in bulk, or one at a time with a custom quantity or discount
1. Pick a booking → 2. Check off the items served → 3. Click Assign — or add one at a time below.
Quick-Tag Multiple Items to a Stall Booking
Search, check off everything for this booking, and assign them all in one click. Every item checked gets the default quantity below with no discount; fine-tune individual quantities or discounts afterward in Admin Panel.
Add One Item Manually
Use this when a single item needs a custom quantity or discount right away, instead of tuning it afterward.
Why this prevents price mismatches
Every stall booking references the catalog item by ID, not by a copied price. If you ever update an item's base price in the Menu Catalog, every booking using it reflects the new price automatically. The only way one booking pays differently than another for the same item is the explicit discount you set right here.
| Stall Booking | Date | Item | Base Price | Qty | Discount | Final Price | Notes |
|---|
Food Testing
Tasting samples given to a potential customer before they book — track what was served, their feedback, and how pricing negotiations land
1. Start a session for the event/customer → 2. Open it and add each dish tested, with its own photo and price → 3. Log their feedback and whether you're honoring the negotiated price.
Menu & Recipe Costing
Cost a dish, set a target margin, get the price to charge
1. List your ingredients and their costs → 2. Set a target margin → 3. See the price you should charge.
New Item
Saved Items
Partner Contributions
Build-out capital — what each partner put into the business
1. Add each partner's name once → 2. Log what they put in any time, with a date and category.
Partners
Contribution Share
Log a Contribution / Build-out Spend
| Date | Partner | Category | Amount | Notes |
|---|
Restaurant Setup Costs
Everything spent building the place out — permits, plumbing, construction, equipment
1. Pick a category → 2. Fill in the expense → 3. Click Add — attach a receipt if you have one.
Log a Setup Expense
Spend by Category
| Date | Group | Category | Vendor | Amount | Paid By | Document | Notes |
|---|
Monthly Expenses
Rent, electricity, water, insurance, and every other recurring bill — tracked month by month
1. Pick a category and month → 2. Fill in the amount → 3. Click Add. Use "Copy Last Month" to save time on repeat bills.
Add an Expense
Same bills every month? copies every line item from the most recent month into the one you're currently viewing below (amounts stay editable, payment status resets to Unpaid).
| Category | Vendor | Amount | Payment Status | Document | Notes |
|---|
All Months
Every month you've logged expenses for, most recent first — click to expand.
Loans & EMI
Borrowed capital, EMI schedule, and outstanding balance
1. Add the loan once → 2. Log each EMI payment as you make it, to track what's still outstanding.
Loans
| Lender | Type | Taken By | Principal | Rate | Tenure | EMI | Paid | Outstanding |
|---|
Log an EMI Payment
| Date | Loan | Amount | Notes |
|---|
Important Docs
Licenses, permits, insurance, contracts, and anything else worth having on hand
1. Fill in a title and category → 2. Attach a file → 3. Click Upload.
Upload a Document
PDF, images, or any other file type. Up to ~15MB.
| Title | Category | File | Size | Notes | Uploaded |
|---|
Important Contacts
Vendors, contractors, utilities, banks, and anyone else you'd need to reach in a hurry
1. Fill in a name and category → 2. Attach a business card if you have one → 3. Click Add Contact.
Add a Contact
A file isn't required — add one only if you want a business card or reference doc on hand.
| Name | Category | Company | Phone | Address | File | Notes |
|---|
Setup Cost Categories
Powers the Setup Costs sidebar groups and category dropdown
Add a category and assign it to a group — this controls what shows up in Setup Costs' dropdown and sidebar.
Editing a category's name here doesn't rewrite past expense records — those keep whatever text they were saved with.
| Category | Group | Description | Order |
|---|
Dropdown Lists
Values used in dropdowns across Bookings, Contributions, Loans, Prep, Invoicing, the Item Catalog, and Important Docs
Pick a list from the dropdown, then add, edit, or remove the values that appear as choices elsewhere in the app.
Adding a list name here that isn't already wired into the app won't create a new dropdown by itself.
| Value | Order |
|---|
Menu Catalog
Manage every menu item in the catalog from one screen
A read-only, all-in-one view of every catalog item across the app — edit or remove any of them from here.
Editing base price here updates it everywhere the item is referenced — including any event it's already been assigned to (unless that assignment has its own discount).
| Category | Item Name | Base Price | Unit | Dietary Tags |
|---|
Assign an Item to an Event
Every catalog item tagged to a booking, with its event-specific price, in one manageable list
See every catalog item tagged to a booking in one place — edit the quantity or discount, or remove it entirely.
Base price always comes from the catalog — you can only adjust quantity, discount, and notes here, never the underlying price, so it can't drift between events by accident.
| Event | Item | Base Price | Qty | Discount % | Discount Amt | Event Price | Notes |
|---|
Users & Roles
Create a login for each partner or staff member, and assign their role
1. Click Add User → 2. Set a username, password, and role → 3. Use the ⋯ menu on any row to reset their password or block them, any time.
Roles control what a login can see and do — fine-tune the exact rules under the Permissions tab. Linking a login to a partner is optional; it's just for display.
An alternate username logs into the exact same account, with its own separate password — useful when two people jointly hold one partner seat but don't want to share credentials. Leave the alternate password blank to share the primary one instead. Every action still shows which specific name was used to log in, in the Activity Log.
| ID | Username(s) | Display Name | Role | Linked Partner | Active | Status | Last Login | New Password |
|---|
Permissions
Fine-grained view / edit / delete rules for each role, across every module — enforced on the server, not just hidden in the UI
Pick a role, then toggle View, Edit, and Delete for each part of the app that role should be able to access.
Roles
Create a custom role beyond the defaults. A new role starts with everything unchecked below — turn on exactly what it should be able to do.
| Role | Description |
|---|
| Role | Module | View | Edit | Delete |
|---|
Backups
Status of the daily database backup — run automatically outside this app via the operating system's scheduler
Nothing to do here — this just shows whether your scheduled daily backup actually ran, and when.
This app doesn't trigger backups itself — a backup that only runs while the app happens to be open isn't a real backup.
npm run db:backup mirrors the primary database into a second, independent database, and should be
scheduled to run once a day via cron (or Task Scheduler on Windows). See the README for the one-time setup command.
Each run below reflects an actual backup attempt, whether it succeeded or failed.
| Ran At | Status | Detail |
|---|
Activity Log
Everything anyone added, edited, or removed — so it's transparent to everyone with access, not just admins
Nothing to do here — every action anyone takes in the app shows up automatically, most recent first.
| When | Who | Action | What |
|---|
My Profile
Your own info — visible to teammates alongside your activity, so everyone knows who's who
1. Update your name, bio, or photo → 2. Click Save.
Photo & Bio
JPG or PNG, keep it under ~1.5MB.
Account
Need a different role, or to link your account to a partner record? Ask whoever has Admin Panel access — that's managed under Users & Roles.
AI Insights
Ask Claude to read your books and tell you what's actually going on
Type a question about your numbers in plain English and press Enter — Claude reads your data and answers.
Full Business Analysis
Pulls every logged entry across Daily, Catering and Events plus your saved costing items, and asks for a plain-language breakdown: what's profitable, what's bleeding money, and what to fix first.
Analysis is generated from the data you've entered in this app. It's a starting point for decisions, not a substitute for your accountant.