Cursor App Template #43 — Facility & Office Management
Facility & Office Management
Manage rooms, track utilization, log maintenance, and simulate bookings in one browser-based dashboard.
Overview
This app helps workplace and facilities teams monitor office spaces without a separate CAFM system. Browse rooms in editable grids, simulate room bookings, see utilization KPIs and charts, and view a clickable floor-plan map. Maintenance tickets stay linked to spaces. Data persists locally in your browser, with Excel export for reporting. Everything runs in a single self-contained HTML page.
Key features
Space & maintenance grids
- Rooms & spaces grid — Name, floor, type, capacity, utilization %, and status (Available, Booked, In Use, Maintenance). Click a row to select a space.
- Maintenance log — Tickets linked to spaces with issue, priority, status, scheduled date, and assignee.
- Add space / log ticket — Create new rooms or maintenance entries from the grid headers.
Booking simulation
- Booking form — Pick a space, date, time range, and organizer; preview availability before booking.
- Conflict detection — Warns when a slot overlaps an existing booking or the space is under maintenance.
- Status tracking — Booking updates space status and utilization; today's bookings appear in a summary table.
- Selected space panel — Shows details for the currently selected room.
Utilization summary
- KPI cards — Total spaces, average utilization, bookings today, and open maintenance tickets.
- Utilization charts — Bar charts for average utilization by floor and by space type (Conference, Office, Lab, etc.).
- Color-coded utilization — Grid cells highlight high (≥75%), medium (≥50%), and low utilization.
Floor plan map
- Interactive placeholder — SVG floor plan with clickable room blocks colored by utilization; syncs with grid selection.
Reporting & data
- Excel export — Download Spaces, Maintenance, and Bookings sheets via SheetJS.
- localStorage — Spaces, maintenance, bookings, and selection persist across sessions.
- Reset data — Restore sample dataset with confirmation.
- Dark mode — Toggle light/dark theme; AG Grid and Chart.js adapt; preference is remembered.
Data & persistence
Sample data includes eight spaces across three floors, four maintenance tickets, and three bookings for today. All changes save to `localStorage` under `facility-management-data`.
Charts & reporting
Two bar charts aggregate utilization by floor and by space type. Excel export includes all three data sets on separate sheets.
Built with
Tailwind CSS (CDN), AG Grid Community, Alpine.js, Chart.js, and SheetJS — all loaded from CDN in a single HTML file.
Try the interactive walkthrough below. Click Walk through features and use Next / Back (or arrow keys) to explore every feature.
Dark mode and localStorage
Manage rooms and spaces, track utilization, maintenance, and bookings.
Simulate booking
Time slot overlaps an existing booking.
Conference A · Floor 1 · Conference · Capacity 12
Utilization: 78% · Status: Booked
Utilization by floor
Floor 1 · Floor 2 · Floor 3Utilization by space type
Conference · Office · Lab · TrainingFloor plan map
78%
62%
85%
45%
55%
30%
| Space | Fl | Type | Cap | Util | Status | |
|---|---|---|---|---|---|---|
| Conference A | 1 | Conf | 12 | 78% | Booked | |
| Conference B | 1 | Conf | 8 | 62% | Available | |
| Open Office 101 | 1 | Office | 24 | 85% | In Use |
| Space | Issue | Priority | Status | Scheduled |
|---|---|---|---|---|
| Server Room | HVAC filter | High | Open | 2026-07-10 |
| Open Office 101 | Flickering lights | Med | Scheduled | 2026-07-12 |
| Conference A | Projector cal | Low | Completed | 2026-07-05 |
Today’s bookings
| Space | Time | Organizer | Status |
|---|---|---|---|
| Conference A | 09:00 – 11:00 | Sales Team | Booked |
| Training Room | 13:00 – 17:00 | HR Onboarding | Booked |
| Breakout Pod | 10:30 – 12:00 | Product Sync | In Use |
