riverqueue/river
Fast and reliable background jobs in Go observed · 2026-08-28
Health v2 · maintenance only
94/100
- Activity 99
- Release rhythm 99
- Longevity 73
Flags: no_readme
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-02. Adoption (stars, forks) is never an input.
- gap_med: 11
- age_days: 1029
- days_rel: 8
- days_push: 8
- n_releases_24m: 48
Adoption not part of the score
5604 stars · 174 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-29, confidence not recorded
River is a Go library providing a fast, reliable background job queue backed by PostgreSQL or SQLite, with transactional enqueueing so jobs are committed atomically alongside application data. It includes multiple queues, unique and recurring/cron jobs, retries, snoozing, test helpers, and a web interface, with optional Pro features like workflows and dead letter queues.
Use cases
- run background jobs in a Go application
- enqueue jobs transactionally with Postgres
- schedule recurring cron jobs in Go
- avoid running Redis for job queues
- send onboarding emails after user signup
- process long-running tasks like video encoding in a separate queue
- guarantee a job runs only once per period
When to choose
- your Go app already uses PostgreSQL or SQLite and you want no extra queue infrastructure
- you need atomic enqueueing with database transactions to avoid lost jobs
- you want built-in retries, unique jobs, cron scheduling, and a web UI
- you prefer a simpler architecture over Redis-backed queues like Sidekiq-style systems
When to avoid
- you need extremely high throughput beyond what Postgres-backed polling can handle
- your stack is not Go or does not use Postgres/SQLite
- you need advanced features like workflows, batching, or dead letter queues without paying for River Pro
- you require support for brokers like RabbitMQ, Kafka, or Redis
Facets
library · maturity active
message-queue scheduling workflow-automation cli backend databases developer-tools go windows self-hosted background-jobs job-queue postgres sqlite transactional-enqueueing cron-jobs worker-pool go-library automation linux macos docker
9 sources
- homepage: https://riverqueue.com · fetched 2026-08-29 · 866f4b3ec69c
- site_page: https://riverqueue.com/docs · fetched 2026-08-29 · f091ac21e417
- site_page: https://riverqueue.com/about · fetched 2026-08-29 · d468cb5083a2
- site_page: https://riverqueue.com/docs/transactional-enqueueing · fetched 2026-08-29 · e8ceb10d7415
- site_page: https://riverqueue.com/docs/multiple-queues · fetched 2026-08-29 · 1e34062a2d4a
- site_page: https://riverqueue.com/docs/unique-jobs · fetched 2026-08-29 · 583af853f201
- site_page: https://riverqueue.com/docs/periodic-jobs · fetched 2026-08-29 · 1644ee945143
- site_page: https://riverqueue.com/docs/snoozing-jobs · fetched 2026-08-29 · 4198e5adc57f
- site_page: https://riverqueue.com/docs/transactional-job-completion · fetched 2026-08-29 · 490f9aa6570b
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| riverqueue/river | main | 94 |
For agents
markdown · JSON · MCP: product_card(name="riverqueue/river")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem