Run

Queues and crons, built in.

Run background work and scheduled tasks without standing up a worker or a separate queue.

$ shovelbase queues create emails
$ shovelbase queues send emails '{"to":"a@b.com"}'
✓ queued · the worker picks it up
Queues

Hand off slow work and let it run behind the request. No broker to operate.

Schedules

Cron jobs that just run — reports, cleanups, the work behind the work.

Webhooks

Fan events out to other services the moment something happens.

1Jobs

Hand off the slow stuff

Push work onto a queue and let it run behind the request, so your app stays fast while the heavy lifting happens in the background.

  • Fire and forget Queue the work and move on — a worker picks it up.

  • No broker to run No Redis, no extra box to keep alive.

emails · 4 jobs
send-invitedone
resize-imagerunning
export-reportqueued
sync-webhookqueued
2Jobs

Work that runs on a schedule

Reports, cleanups, reminders — set them to run on their own, on the schedule you choose, without a cron box to maintain.

  • Set it and forget it Nightly, hourly, weekly — it just runs.

  • The work behind the work The chores your app needs, handled quietly.

nightly-report
0 0 * * *
cleanup-temp
*/30 * * * *
weekly-digest
0 9 * * 1

What you'd build with it

The kind of problem Jobs is there to solve.

Use case
Refresh their accounts overnight

Pull the latest transactions from Plaid every night so a budgeting app opens to fresh numbers each morning.

Use case
Enrich new sign-ups while they sleep

Tag, score, or clean up customer data on a nightly schedule — no worker box to keep running.

Use case
Send the weekly digest on time

A summary email that goes out every Monday at 9am, scheduled once and then forgotten.

No Redis, no cron box, no extra infra. The jobs run where your data already is.

Compare shovelbase →

The rest of the stack