# agenda/agenda

Lightweight job scheduling for Node.js

Repository: https://github.com/agenda/agenda
Canonical: https://ross.abutalabs.com/products/agenda
Homepage: https://agenda.github.io/agenda/
Language: HTML
License: NOASSERTION
License Family: other
Topics: cron, scheduler, job-scheduler, crontab, cronjob, recurring, job, queue, task, runner, automated, frequency, interval, job-processor, mongodb, nodejs, schedule
Last push: 2026-07-21T07:56:40+00:00

## Health v2 (maintenance only)
Score: 95/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 93, release rhythm 94, longevity 100
- inputs: {"age_days": 4691, "days_push": 43, "days_rel": 43, "gap_med": 0.0, "n_releases_24m": 49}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 9699, forks 848 (observed 2026-08-28T04:10:36.822020+00:00)

## What it is
Agenda is a lightweight job scheduling library for Node.js that persists jobs in MongoDB, PostgreSQL, or Redis and supports cron-style or human-readable scheduling. Version 6 is a full TypeScript ESM rewrite with pluggable storage backends, real-time job notifications, and optional web UI (Agendash) and REST API packages.

## Use cases
- schedule recurring background jobs in Node.js
- run cron jobs from a Node.js application
- process delayed or queued tasks with MongoDB persistence
- schedule emails or reports at intervals
- replace polling with real-time job notifications
- manage job concurrency and priorities in a worker queue

## When to choose
- you need persistent, repeatable jobs backed by MongoDB, PostgreSQL, or Redis
- you want cron-style or human-readable scheduling in Node.js
- you need a lightweight scheduler with priorities, concurrency, and locking
- you want a TypeScript-native job queue with pluggable backends

## When to avoid
- you need a high-throughput message queue with complex routing (use RabbitMQ or Kafka)
- your stack is Redis-only and you prefer BullMQ's feature set
- you need sub-second job latency without a notification backend
- you require a license with clear permissive terms (license is non-standard)

## Facets
- artifact type: library
- maturity: active
- function: scheduling, message-queue, workflow-automation
- domain: backend, developer-tools
- platform: -
- tags: job-scheduler, cron, mongodb, typescript, background-jobs, task-queue, recurring-jobs, automation, nodejs, javascript

## Member repositories
- agenda/agenda (main) score 95

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:10:36.822020+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:21:15.439803+00:00, confidence not recorded.
  - readme: https://github.com/agenda/agenda (fetched 2026-08-28T04:10:36.822020+00:00, sha e3d378fe69e9)
  - homepage: https://agenda.github.io/agenda/ (fetched 2026-08-29T08:20:51.485526+00:00, sha 011aec0fea1a)
- Data as of 2026-08-30T08:39:29.467469+00:00.
