A little structure.
A lot of possibility.
A focused place to turn ideas into progress. Create tasks, keep work moving, and see the story behind every change.
Real accounts. Real data. Your own workspace.
Welcome back
Sign in to pick up where you left off.
New here?
Your tasks and activity are private to your account. This sample does not include password recovery yet.
Your workspace
Small steps. Meaningful progress. Everything in one place.
Your tasks
Create, update, and organize the work that matters.
| Task | Status | Last updated | Actions |
|---|
No tasks here yet
Create your first task, or adjust your search.
The story of your work
Your latest 50 events. Delivered through RabbitMQ and stored in MongoDB for 90 days.
Every change has a story
Create or update a task to see an event appear here. Delivery can take a few seconds.
Traffic simulation
Generate real requests against this workspace so the traces, errors and latency show up in ASTRA APM.
Persistent faults
These change the environment for everyone and stay applied, across restarts, until you restore them. Watch ASTRA react, then press Restore to fix the fault.
One workspace. Every service in use.
Live connectivity checks, not simulated service statuses.
Your browser experience
Caddy serves this interface over HTTPS and forwards API requests to the backend EC2.
Serving this pageApplication + worker
Node.js handles authentication, isolated task CRUD, and reliable asynchronous event processing.
Not checkedPostgreSQL
Stores users, hashed passwords, sessions, tasks, and an event outbox in a single transaction.
Not checkedRabbitMQ
Durably queues task events. The worker confirms publication and acknowledges completed deliveries.
Not checkedMongoDB
Keeps your activity timeline. Event IDs prevent duplicate entries when messages are retried.
Not checkedBrowser → Backend → PostgreSQL task + outbox → RabbitMQ → Worker → MongoDB activity
Task changes and their outbox record commit together. Activity is asynchronous; a delayed event does not mean your saved task was lost.