WJb Store Examples & Demos

Explore SQL Server, PostgreSQL, MySQL, SQLite, and IndexedDB integrations with persistence and workflow state management examples.

Browser Store Providers
SQL Store Providers

🌐 IndexedDB

Run WJb entirely in the browser using the official WJb.IndexedDB store provider.

IndexedDB provides durable, client-side persistence for jobs, workflows, execution history, monitoring data, actions and service configuration β€” while keeping the exact same programming model as every other WJb store.

The WJb Monitor Demo runs identically in the browser. Only the store registration changes.

Why IndexedDB?

  • Full persistence directly in the browser
  • No server or database required
  • Perfect for Blazor WebAssembly demos and offline scenarios
  • Data survives page refreshes
  • Zero infrastructure overhead
  • Ideal for client-side workflows and prototyping
Great choice when you want a fully working WJb application that runs completely in the browser.

What Is Stored?

The WJb.IndexedDB store persists everything the Monitor needs:

  • Jobs and their current state
  • Workflow transitions
  • Full execution history
  • Monitoring and progress data
  • Action definitions
  • Service configuration
All of this becomes immediately available in the monitoring dashboard.

How It Works

Register the store:

builder.Services.AddSingleton<IStore, IdbStore>();

That’s it. No connection strings or database initialization required.

The rest of the application works exactly the same as with any other storage provider.

Monitor Demo

This sample shows the complete WJb Monitor Demo running on IndexedDB with almost zero changes compared to other providers.

You get the same:

  • Background jobs & workflows
  • Live monitoring dashboard
  • Execution history
  • Retry handling
  • Action & service discovery
Only the storage backend is different β€” everything lives in the browser.

Resources

An unhandled error has occurred. Reload πŸ—™

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please retry or reload the page.