Hatchet is an open-source distributed task queue with durable workflow execution.
What You Get for Free
- Durable workflows — survive crashes, auto-resume
- DAG workflows — define step dependencies
- Concurrency control — limit parallel executions per workflow
- Rate limiting — control throughput per workflow type
- Retries — configurable retry strategies
- Cron scheduling — recurring workflow triggers
- Events — trigger workflows from events
- Dashboard — visualize running workflows
- SDKs — TypeScript, Python, Go
- Self-hosted — free, unlimited workers
Quick Start
# Docker Compose
git clone https://github.com/hatchet-dev/hatchet.git
cd hatchet && docker compose up -d
import Hatchet from '@hatchet-dev/typescript-sdk';
const hatchet = Hatchet.init();
const workflow = hatchet.workflow({
name: 'order-processing',
steps: [
hatchet.step('validate', async (ctx) => {
return { valid: true };
}),
hatchet.step('charge', async (ctx) => {
// Durable — survives crashes
await chargeCard(ctx.input.orderId);
}),
hatchet.step('notify', async (ctx) => {
await sendEmail(ctx.input.email);
})
]
});
Why Teams Choose It Over Celery/Bull
Celery loses tasks on crashes. Bull needs Redis:
- Durable — workflow state persists through crashes
- DAG support — complex step dependencies
- Dashboard — see every workflow execution
- Multi-language — TypeScript, Python, Go SDKs
A payment processor lost 3 orders during a server restart — Celery tasks vanished. After switching to Hatchet, workflows resume exactly where they left off after any crash. Zero lost transactions in 6 months.
Need Custom Data Solutions?
I build production-grade scrapers and data pipelines for startups, agencies, and research teams.
Browse 88+ ready-made scrapers on Apify → — Reddit, HN, LinkedIn, Google, Amazon, and more.
Custom project? Email me: spinov001@gmail.com — fast turnaround, fair pricing.
Top comments (0)