Skip to content

Examples

Complete apps you can read, run and copy from.

9 example apps built with Halyard, from a single delayed email to idempotent billing. Each one runs locally with a test key in under five minutes.

9 examples

Language
Framework
  • Next.jsNode.js412

    SaaS onboarding emails

    A Next.js app that queues a welcome email at sign-up and a follow-up three days later with runAt.

    • Jobs
    • Delayed jobs
    • Emails
  • ExpressNode.js286

    Image upload pipeline

    Direct-to-storage uploads, a media queue with sharp workers and a live progress bar.

    • Media
    • Progress
    • Queues
  • net/httpGo198

    Order events fan-out

    One order.paid event delivered to receipts, inventory and a webhook, each with its own retries.

    • Events
    • Webhooks
    • Subscriptions
  • FastAPIPython231

    Nightly reports with FastAPI

    A schedule at 02:00 Europe/Berlin that writes a CSV, uploads it and emails a signed link.

    • Schedules
    • Time zones
    • CSV
  • DjangoPython174

    Idempotent subscription billing

    Monthly renewals in Django with idempotency keys, upserts and payment calls keyed on job.id.

    • Reliability
    • Idempotency
    • Billing
  • RailsRuby97

    Crontab to schedules in Rails

    A Rails app that moved six crontab lines to paused Halyard schedules and switched them over one by one.

    • Migration
    • Schedules
  • ExpressNode.js143

    Webhook relay with signature checks

    Receive Halyard webhooks, verify Halyard-Signature and forward events to an internal queue.

    • Webhooks
    • Security
  • net/httpGo88

    Rate-limited partner sync

    Keep a partner's 100 requests per minute limit with a queue rate limit and batched jobs.

    • Queues
    • Rate limits
  • FastAPIPython265

    Audio transcripts in the background

    Long-running transcription jobs with checkpoints, timeouts and a dead-letter review page.

    • Long jobs
    • Checkpoints
    • Media

Starter templates

A new project with a worker already wired up

create-halyard-app scaffolds an app, a worker process and an .env.example. Pick the template that matches your stack.

Terminal
npx create-halyard-app@latest --template nextjs
  • Next.js--template nextjsApp Router, route handlers, worker in the same repo
  • Express--template expressMinimal API plus a separate worker process
  • FastAPI--template fastapiAsync endpoints and a Halyard worker with uvicorn
  • Django--template djangoManagement command worker and admin integration
  • Go--template gonet/http server and a worker binary
  • Rails--template railsActive Job adapter backed by Halyard
Terminal
$ npx create-halyard-app@latest --template nextjs✔ Project name … order-desk✔ Copied template nextjs (App Router, worker, .env.example)✔ Installed dependencies with npm Next steps:  cd order-desk  cp .env.example .env.local   # add your hy_test_ key  npm run dev                  # app on :3000, worker in the same terminal

Every template ships with the same three jobs (a delayed email, a scheduled cleanup and an event handler), so you can see each pattern working before you change anything.

Suggested