Case study · 2025–present
GhostGrid
A continuously developed, private dashboard that brings system health, planning, reflection, and a local AI assistant into one responsive workspace.
- One view
- operations and personal planning
- Local AI
- private, on-device model execution
- Ongoing
- shaped through daily use
01 · Overview
- Role
- Product design, full-stack engineering & operations
- Status
- Private · in continuous development
- Privacy
- Private system
From real constraint
to working system.
The challenge
Infrastructure status, tasks, calendar context, and journal notes all answer different versions of the same question: what needs attention now? Separate tools made that context fragmented and slowed down routine decisions.
The response
GhostGrid combines those signals in a private, installable dashboard. A FastAPI service boundary connects a responsive React interface to personal workflows, system signals, and a locally hosted language model without turning private context into a public service.
02 · Build
What the system needed.
GhostGrid features and engineering decisions
Information design
A dashboard built around attention
The responsive bento layout gives each signal enough space to be understood without turning the page into a wall of telemetry. Priority changes with screen size, so the system remains useful at a desk or from a phone.
- System status and recent activity summarized at a glance
- Task, calendar, and journal surfaces designed as related context
- Installable PWA behavior for quick, app-like access
Application boundary
A typed interface over private capabilities
React and Vite handle a modular client while FastAPI coordinates the private service layer. Clear contracts keep monitoring, planning, and assistant features isolated enough to evolve independently.
- Focused API modules rather than direct access to underlying systems
- Responsive states for loading, partial availability, and failure
- Sanitized client models that avoid exposing operational internals
Local intelligence
An agent that stays close to the data
A locally hosted Ollama model can work with intentionally selected personal context. The agent is one capability inside the system, not an unrestricted control plane.
- Local inference keeps personal prompts within the private environment
- Narrow tools expose specific, reviewable actions and read paths
- Clear interface cues separate generated guidance from system facts
Living system
Continuous development through use
GhostGrid is treated as an operating product. New capabilities earn their place by reducing friction, and existing views are simplified as the system reveals what is genuinely useful.
- Iteration guided by daily workflows rather than a feature inventory
- Health signals and graceful degradation for dependent services
- Documentation for routine operation and recovery
03 · System
Boundaries before boxes.
Sanitized system architecture
- 01Installable web interface
- 02FastAPI boundary
- 03Bounded capabilities
- 04Local model & private data
04 · Views
Designed representations.
Sanitized visual gallery
05 · Outcomes
A stronger operating baseline.
- 01
Unified system awareness and personal planning without publishing private context to third-party dashboards.
- 02
Created a maintainable boundary for adding capabilities without coupling the interface directly to infrastructure.
- 03
Established a safe place to explore local-agent workflows with deliberately constrained access.