Lantern Row Expenses
Status: Live.
Your muse
Build a team expense tracker for a made-up 12 person company called Lantern Row Studio. All the people and numbers here are made up. I want a real multi-screen product, not a single page: 1. Sign-in: each person signs in if sign-in is available, and is either an employee or a manager. 2. Expenses list: every expense with date, merchant, category, amount, status and who submitted it, with search and filters by category, status and person. 3. Add an expense: a form with date, merchant, category, amount, notes and a receipt photo. 4. Receipt photo reading: when someone adds a receipt photo, the app reads the merchant, date and total from the photo and fills in the form so the person can correct it. 5. Edit and delete: people can edit or delete their own expense until it is approved. 6. Approvals: a manager screen with a queue of submitted expenses, where the manager can approve or reject each one with a comment. The person who submitted it sees the decision and the comment on their expense. 7. Dashboard: charts of spending by month and by category, plus totals for pending, approved and rejected. 8. CSV export: download the expenses currently shown, with the filters applied, as a CSV file. 9. Saved data: everything stays saved after a page reload and after coming back later. Start it with a few sample expenses from made-up people such as Priya Nair, Tom Okafor and Dana Reyes, so the screens are not empty the first time.
Done. Milestone 1 done.
npm run verifyexits 0 with all steps green.Checks ran
Done. Milestone 2 done.
npm run verifyexits 0: 14 tests pass, 8 of 8 requirements (R1–R8) pass, manifest valid with 5 actions.Checks ran, try 2
Done. Milestone 3 done. Status per part:
Checks ran, try 3
Checks passed, try 4

The plan: Lantern Row Expenses
Track team spending, receipts and approvals for Lantern Row Studio.
- Person opens the app and picks their name from the 12-person Lantern Row Studio roster to...
- App shows the expenses list with date, merchant, category, amount, status and submitter...
- Person opens Add expense and types date, merchant, category, amount and notes
- Person adds a receipt photo and the app reads merchant, date and total from the photo and...
See the full plan
Who it's for
Employees and managers of the fictional Lantern Row Studio team.
How it works
- Person opens the app and picks their name from the 12-person Lantern Row Studio roster to sign in as employee or manager.
- App shows the expenses list with date, merchant, category, amount, status and submitter plus search and filters by category, status and person.
- Person opens Add expense and types date, merchant, category, amount and notes.
- Person adds a receipt photo and the app reads merchant, date and total from the photo and fills the form.
- Person checks and corrects the filled fields and saves the expense as submitted.
- Person can open their own expense to edit or delete it until it is approved.
- Manager opens the approvals queue of submitted expenses.
- Manager approves or rejects each expense with a written comment.
- Person who submitted it sees the decision and comment on their expense.
- Team checks the dashboard for spending by month, spending by category, and pending, approved and rejected totals.
- Person applies filters and downloads the expenses currently shown as a CSV file.
Screens
- Sign in. Pick a name from the 12-person roster and sign in with employee or manager role shown.
- Expenses list. Browse all expenses with search and filters by category, status and person.
- Add and edit expense. Enter date, merchant, category, amount, notes and receipt photo with auto-filled values to correct.
- Expense detail. Show one expense with receipt, history, status and manager decision comment.
- Approvals queue. Let a manager review submitted expenses and approve or reject each with a comment.
- Dashboard. Show spending by month, spending by category, and pending, approved and rejected totals with CSV export.
What goes in
- Image (optional): Receipt photo JPG or PNG up to 4.5 MB for auto-fill.
- Text: Expense fields: date, merchant, category, amount, notes, plus search text and filter choices.
What comes out
- Text: Expense list, expense detail with status and manager comment, and dashboard totals and charts.
- File: CSV file of the currently filtered expenses.
Models
Model Used for Why Muse Wonder Read merchant, date and total from receipt photos Vision input reads photos of receipts and returns structured fields to prefill the expense form. Limits
- No real user accounts. Sign-in is a name picker from the made-up 12-person roster and data stays only in this browser.
- Receipt reading is an estimate. The person must check merchant, date and total before saving.
- Charts, totals and CSV cover only expenses saved in this browser, and CSV exports only the rows currently shown with filters.
- Sample people and amounts are made up for demo and are not real company data.
From your inspo
Text-only note asking for a multi-screen team expense tracker for the made-up Lantern Row Studio with sign-in, expenses, receipts, approvals, dashboard and CSV export.
Takes
- Team expense job with submit, review and track flow
- List with search plus category, status and person filters
- Add form with receipt photo that prefills fields
- Manager approve or reject queue with comments
- Dashboard with monthly and category charts and status totals
Cost per run: about $0.01 (est.). One receipt read uses about 1,500 input tokens ($0.006) plus about 300 output tokens ($0.006), total about $0.012, rounded to $0.015 per run with a receipt. Runs without a receipt cost $0.
What you asked for 15 of 15 checked and working
- R1: Track expenses for the made-up 12-person company called Lantern Row Studio with all people and numbers made up. Works Team expenses list for Lantern Row Studio crew with made up merchants and amounts.
- R2: Provide a real multi-screen product with separate screens, not a single page. Works Separate Expenses, Expense detail, Approvals, Dashboard and Account screens with top navigation.
- R3: Provide sign-in where each person signs in if sign-in is available, and is either an employee or a manager, using a 12-person roster picker with role shown and choice still there after reload. Works Sign in lists 12 names with manager or employee roles and shows signed in as Tom Okafor.
- R4: Show every expense with date, merchant, category, amount, status and submitter, with search and filters by category, status and person. Works List shows date, merchant, category, amount, status and submitter with search and Category Status Person filters.
- R5: Provide an add expense form with date, merchant, category, amount, notes and receipt photo, still saved after reload. Works Add expense form shows date, amount, merchant, category, notes and receipt photo with Save expense.
- R6: When someone adds a receipt photo, read merchant, date and total from the photo, fill the form, and let the person correct it before saving. Works Receipt photo filled date, amount and DAILY GRIND CAFE with Read by Muse Wonder notice for correction.
- R7: Let people edit or delete their own expense until it is approved, with changes still saved after reload. Works Pending R7 Edited Shop detail shows Edit expense and Delete expense buttons.
- R8: Provide a manager approvals queue of submitted expenses where a manager can approve or reject each one with a comment, still saved after reload. Works Approvals queue shows 2 waiting with comment box and Approve and Reject buttons per expense.
- R9: Show the approval decision and manager comment on the expense to the person who submitted it. Works Expense detail shows Approved by Priya Nair with written comment.
- R10: Show a dashboard with charts of spending by month and by category plus totals for pending, approved and rejected. Works Dashboard shows status totals and By category and By month bar charts with amounts.
- R11: Download the expenses currently shown with filters applied as a CSV file. Works Filtered list shows Download CSV (1) for currently shown Travel expense.
- R12: Keep everything saved in this browser so all expenses, receipts, users, decisions and comments stay saved after a page reload and after coming back later. Works R12 Corner Store detail still shows receipt image, decision and comment after reload.
- R13: Start it with a few preloaded sample expenses from made-up people including Priya Nair, Tom Okafor and Dana Reyes so screens are not empty on first open. Works Initial list of 6 includes Priya Nair, Tom Okafor and Dana Reyes.
- R14: Provide top navigation between Expenses, Approvals, Dashboard and account, with manager-only access to the approvals queue. Works Top nav has Expenses, Approvals, Dashboard, Account and approvals notes manager sign in.
- R15: Show an empty state when no expenses match filters and an error state when receipt reading fails. Works Empty search shows No expenses match these filters and bad file shows Could not read receipt error.
Recorded demo Done. Milestone 4 done, and the product is complete.
npm run verifyexits 0: 22 tests pass, 15 of 15 requirements (R1–R15) pass, manifest valid with 6 actions.It's live.