feat: expense tracking dashboard for admin #14

Closed
forgejo_admin wants to merge 0 commits from 13-expense-tracking-dashboard into main

Summary

Adds an expense tracking dashboard (admin-expenses.html) for Marcus to monitor program profitability -- revenue vs expenses with budget breakdowns by category. Also wires the new page into admin.html Quick Actions.

Changes

  • admin-expenses.html (new) -- Full expense dashboard with summary stat cards (Revenue, Expenses, Net), budget categories with color-coded CSS progress bars, expense log table with 6 placeholder entries, and a Log Expense form with amount/date/category/description fields
  • admin.html -- Added "Expenses" button to Quick Actions grid linking to the new page

Test Plan

  • Open admin-expenses.html directly -- verify nav, stat cards, budget bars, expense table, and form render correctly
  • Open admin.html -- verify "Expenses" button appears in Quick Actions and links to admin-expenses.html
  • Check mobile (375px) and desktop (900px+) viewports -- stats-row collapses to 2-col on mobile, budget bars remain readable
  • No regressions on other admin pages

Review Checklist

  • Passed automated review-fix loop
  • No secrets committed
  • No unnecessary file changes
  • Commit messages are descriptive
  • Closes #13
  • Plan: plan-wkq
## Summary Adds an expense tracking dashboard (`admin-expenses.html`) for Marcus to monitor program profitability -- revenue vs expenses with budget breakdowns by category. Also wires the new page into admin.html Quick Actions. ## Changes - **`admin-expenses.html`** (new) -- Full expense dashboard with summary stat cards (Revenue, Expenses, Net), budget categories with color-coded CSS progress bars, expense log table with 6 placeholder entries, and a Log Expense form with amount/date/category/description fields - **`admin.html`** -- Added "Expenses" button to Quick Actions grid linking to the new page ## Test Plan - [ ] Open `admin-expenses.html` directly -- verify nav, stat cards, budget bars, expense table, and form render correctly - [ ] Open `admin.html` -- verify "Expenses" button appears in Quick Actions and links to `admin-expenses.html` - [ ] Check mobile (375px) and desktop (900px+) viewports -- stats-row collapses to 2-col on mobile, budget bars remain readable - [ ] No regressions on other admin pages ## Review Checklist - [x] Passed automated review-fix loop - [x] No secrets committed - [x] No unnecessary file changes - [x] Commit messages are descriptive ## Related - Closes #13 - Plan: `plan-wkq`
Author
Owner

Self-Review

Verdict: Pass -- no blocking issues.

Acceptance Criteria Check

Criteria Status
admin-expenses.html exists with admin nav Done
Summary stat cards: Revenue, Expenses, Net Done
Budget categories with placeholder amounts and CSS bars Done (5 categories)
Expense log table with 5-6 placeholder entries Done (6 entries)
"Log Expense" form with amount, category, description, date Done
admin.html has "Expenses" in quick actions Done
Uses existing CSS patterns (stat-cards, info-card, list-row) Done

Data Consistency

  • Revenue: 54 members x $200/mo = $10,800
  • Expenses: $1,700 + $480 + $950 + $680 + $420 = $4,230
  • Net: $10,800 - $4,230 = $6,570

All figures are internally consistent.

Notes

  • The actions-row on admin.html uses a 2-column grid. Adding a 3rd button means one button sits alone on the second row at half-width. Acceptable for a playground prototype.
  • 3 stat cards in a 2-col mobile / 4-col desktop grid leaves an empty slot on desktop. Standard CSS grid behavior, visually fine.
## Self-Review **Verdict: Pass -- no blocking issues.** ### Acceptance Criteria Check | Criteria | Status | |----------|--------| | `admin-expenses.html` exists with admin nav | Done | | Summary stat cards: Revenue, Expenses, Net | Done | | Budget categories with placeholder amounts and CSS bars | Done (5 categories) | | Expense log table with 5-6 placeholder entries | Done (6 entries) | | "Log Expense" form with amount, category, description, date | Done | | `admin.html` has "Expenses" in quick actions | Done | | Uses existing CSS patterns (stat-cards, info-card, list-row) | Done | ### Data Consistency - Revenue: 54 members x $200/mo = $10,800 - Expenses: $1,700 + $480 + $950 + $680 + $420 = $4,230 - Net: $10,800 - $4,230 = $6,570 All figures are internally consistent. ### Notes - The `actions-row` on `admin.html` uses a 2-column grid. Adding a 3rd button means one button sits alone on the second row at half-width. Acceptable for a playground prototype. - 3 stat cards in a 2-col mobile / 4-col desktop grid leaves an empty slot on desktop. Standard CSS grid behavior, visually fine.
Author
Owner

Closing — expense tracking is Phase 16, premature. Focus on core user stories for Phase 10.

Closing — expense tracking is Phase 16, premature. Focus on core user stories for Phase 10.
Author
Owner

Closing — dashboard prototypes will move to a separate westside-app-playground repo. This repo is now scoped to landing site work only.

Closing — dashboard prototypes will move to a separate westside-app-playground repo. This repo is now scoped to landing site work only.
Author
Owner

Closing — dashboard prototypes will move to a separate westside-app-playground repo. This repo is now scoped to landing site work only.

Closing — dashboard prototypes will move to a separate westside-app-playground repo. This repo is now scoped to landing site work only.
forgejo_admin closed this pull request 2026-03-27 10:46:52 +00:00

Pull request closed

Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
forgejo_admin/westside-playground!14
No description provided.