TaskForge Logo

TaskForge

A production-grade, distributed job scheduler built to demonstrate resilient backend systems architecture and real-time dashboard tracking.

Try the "Chaos Demo"

TaskForge was built to be broken. Use the Observer dashboard to simulate crashes and see real-time resilience in action.

Step 1

Spawn Jobs

Spawn 1 or 50 tasks to flood the system with jobs, flowing from Queued to Running to Completed.

Step 2

Kill Worker

Inject a fatal crash into the Node.js worker process to simulate an ungraceful shutdown.

Step 3

Observe Degraded State

Watch the dashboard Health Indicator instantly flip to Degraded as heartbeats halt.

Step 4

Auto-Recovery

The Scheduler sweeps the DB, breaks stale locks, and re-queues jobs automatically.

Core Features

Distributed Execution

Horizontally scalable Node.js worker pool leveraging RabbitMQ for reliable message distribution.

Resilience & Chaos Engineering

Built-in 'Kill Worker' fault-injection to demonstrate automatic recovery from ungraceful shutdowns.

Real-Time Tracking

Next.js frontend using high-frequency SWR short-polling to render a responsive Kanban view.

Execution Guarantees

At-Least-Once execution guarantees with best-effort FIFO chronological ordering and backoff policies.

Global Event Console

Centralized polling logs capturing every event across the API, Scheduler, and Worker nodes.

Live System Health

Continuous system diagnostics on PostgreSQL, RabbitMQ, and Worker nodes with dynamic UI indicators.

System Architecture Tech Stack

Node.js & Express
API Service
TypeScript
Type Safety
PostgreSQL
Source of Truth
RabbitMQ
Message Broker
Next.js
Frontend UI
Docker Compose
Infrastructure