Bare Metal Core
dmcore runs on bare metal (not Docker) because it requires direct OS access for workspace detection via wmctrl and X11.
Productivity Tracking - Architecture Documentation
High-level architecture showing local tracking, data sync, and remote portfolio deployment.
Real-time sync using MongoDB Change Streams with resume token persistence.
| Collection | Purpose | Size |
|---|---|---|
switch |
Workspace switch events with timestamps and durations | ~33k docs |
task |
Current task definitions from task file | ~50 docs |
task_history |
Cached historic task path lookups | ~200 docs |
state |
Current workspace and task state | 1 doc |
Docker Compose deployment on AWS EC2 with Nginx reverse proxy.
dmcore runs on bare metal (not Docker) because it requires direct OS access for workspace detection via wmctrl and X11.
Local MongoDB configured as replica set (rs0) to enable Change Streams. No actual replication, just API requirement.
Local machine pushes to remote (not pull). MongoDB on remote is not exposed to internet - only accessible from the sync daemon.
Remote instance shows historical data. "Current task" reflects last-synced state, not real-time.