#apalis #type

apalis-board-types

Shared types and data structures used by the apalis-board workspace

6 releases

Uses new Rust 2024

new 1.0.0-rc.3 Feb 2, 2026
1.0.0-rc.2 Jan 10, 2026
1.0.0-rc.1 Dec 26, 2025
1.0.0-beta.1 Nov 19, 2025
1.0.0-alpha.1 Oct 31, 2025

#2123 in Asynchronous

Download history 59/week @ 2025-10-27 42/week @ 2025-11-03 86/week @ 2025-11-17 59/week @ 2025-11-24 182/week @ 2025-12-01 23/week @ 2025-12-08 45/week @ 2025-12-15 155/week @ 2025-12-22 60/week @ 2025-12-29 192/week @ 2026-01-05 160/week @ 2026-01-12 203/week @ 2026-01-19 97/week @ 2026-01-26

658 downloads per month
Used in 4 crates (2 directly)

MIT/Apache

15KB
97 lines

apalis-board

apalis-board


apalis-board provides utilities for building web interfaces and apis for managing apalis backends.

Key features:

  • Visualize your queues and jobs in real time
  • Beautiful UI to track job status and progress
  • Perform actions on jobs directly from the dashboard
  • Gain insights into queue health and worker activity
  • Easily integrate with existing apalis-based services
  • Streamline job management and debugging

Get a clear overview of what's happening in your queues and manage jobs efficiently.

Crates

Usage

Each version of apalis-board includes a compatible version of the ui.

apalis-board = { version = "1.0.0-rc.3", features = ["actix"] } #Or axum

Here are the basics of setting up the board:

App::new()
    .service(
        ApiBuilder::new(Scope::new("/api/v1")) // Setup the mount
            .register(notification_store) // Add backends
            .register(email_store)
            .build(), // Build the routes an
    )
    .service(ServeApp::new()) // Serve the frontend

Including Realtime tracing events

let broadcaster = TracingBroadcaster::create();

let tracing_subscriber = TracingSubscriber::new(&broadcaster);
let tracing_layer = tracing_subscriber.layer()
    .with_filter(EnvFilter::builder().parse("debug").unwrap());


tracing_subscriber::registry().with(tracing_layer).init();

/// Then register the broadcaster
App::new()
    .app_data(broadcaster.clone())

If you visit /api/v1/events you will receive the task logs. This is also accessible on the /logs page in the board.

Leptos integration

If you are working on a leptos UI and want to embed the web interface in part of in full, then you can import the web functionality:

apalis-board = { version = "1.0.0-rc.3", features = ["web"] }

Support

Source Crate Support
apalis-cron
apalis-redis ⚠️
apalis-sqlite
apalis-postgres
apalis-mysql
apalis-amqp ⌛⚠️
apalis-rsmq
apalis-pgmq
apalis-file-storage ⌛⚠️

Screenshots

Tasks

Tasks

Single Task

Tasks

Workers

Workers

Queues

Queues

Building the frontend

cd crates/web
trunk build

Examples

  • axum-email-service : Basic example that shows how to send emails via smtp using lettre and axum
  • actix-ntfy-service : Basic example that shows how to publish notifications using ntfy.sh and actix

Acknowledgments

The following repos were referenced in building the frontend

Dependencies

~0.3–1MB
~21K SLoC