EMBER by FenixKit
EMBER
EMBER — FenixKit Full Stack + Jobs
Most complete
.NET 10  only

Engine · Managed · Background
Execution · Runner

Everything in UPLOADS, plus Hangfire background jobs backed by MongoDB. Fire-and-forget, delayed, and recurring jobs — with a live dashboard and configurable worker pools.

Use code FIRSTXPEOPLE for €15 off → €60

A carregar...

What’s inside.

MongoDB MongoDB.Driver Keycloak JwtBearer Redis / StackExchange.Redis Valkey 7.2 AWSSDK.S3 Hangfire.AspNetCore Hangfire.Mongo ErrorOr Docker Compose .NET 10

IBackgroundJobService

Clean abstraction over Hangfire — inject IBackgroundJobService and never depend on Hangfire types directly. Returns ErrorOr<string> for every enqueue so failures are handled like any other operation.

Three job types

Enqueue<T> for fire-and-forget — executed as soon as a worker is free. Schedule<T> for delayed execution. AddOrUpdateRecurring<T> for CRON-scheduled recurring jobs.

Multi-queue + worker pools

Priority, dedicated, or hybrid queue models via HangfireOptions in appsettings.json. Route jobs to specific queues with [Queue("critical")]. No code changes needed to change the model.

Misfire handling

Three modes for missed recurring executions: Relaxed (run once on recovery), Ignorable (skip missed runs), Strict (run once per missed execution). Choose per job.

MongoDB-backed persistence

All job state (queued, processing, scheduled, succeeded, failed) is stored in MongoDB under the hangfire. collection prefix. Same database as your app — no extra infrastructure needed.

Auto-retry + live dashboard

Configurable automatic retries with exponential back-off. Hangfire dashboard at /jobs — inspect queues, retry failed jobs, trigger recurring jobs manually. Access-controlled by default (localhost only).

Pre-built example jobs

OrphanedFilesCleanupJob — nightly recurring job that removes S3 file metadata for objects that no longer exist in storage. ProductCacheInvalidationJob — fire-and-forget cache wipe on the critical queue.

All UPLOADS features included

Keycloak JWT auth, Redis cache-aside, S3 file storage (Public / PresignedUrl / Proxy), per-bucket config, MongoDB persistence, dual pagination, ErrorOr, RFC 7807 errors, Swagger, Docker Compose.

19 repository hooks

All validate, map, cache, after-success, and rollback hooks from UPLOADS are included. Use OnAfterCreateAsync to enqueue a job after every successful insert — the pattern is already wired up in the example code.

One-time payment. Yours forever.

Full source code, private docs, unlimited projects, entire team included.

75

or €60 with code FIRSTXPEOPLE

Secure checkout via Lemon Squeezy  ·  Instant delivery