Agenda Dashboard
Last updated 10 months ago by wes485 .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install agendash-addition 
SYNC missed versions from official npm registry.


Build Status Slack Status Known Vulnerabilities

A Dashboard for Agenda


  • Search by job name , user or tag
  • Job status auto-refreshes (2-second polling by default)
  • Schedule a new job from the UI
  • Dive in to see more details about the job, like the json data
  • Requeue a job (clone the data and run immediately)
  • Delete jobs (Useful for cleaning up old completed jobs)


  • Automatically creates additional indexes on several columns (See #24).


Auto-refresh list of jobs

See job details, requeue or delete jobs


npm install --save agendash

Standalone usage

Agendash comes with a standalone Express app which you can use like this:

node ./bin/agendash-standalone.js --db={{connection string}} --collection=agendaJobs --port=3001

Middleware usage

Agendash provides Express middleware you can use at a specified path, for example this will make Agendash available on your site at the /dash path. Note: Do not try to mount Agendash at the root level like app.use('/', Agendash(agenda)).

var express = require("express");
var app = express();

// ... your other express middleware like body-parser

var Agenda = require("agenda");
var Agendash = require("agendash");

var agenda = new Agenda({ db: { address: "mongodb://" } });
// or provide your own mongo client:
// var agenda = new Agenda({mongo: myMongoClient})

app.use("/dash", Agendash(agenda));

// ... your other routes

// ... start your server

By mounting Agendash as middleware on a specific path, you may provide your own authentication for that path. For example if you have an authenticated session using passport, you can protect the dashboard path like this:

  function (req, res, next) {
    if (!req.user || !req.user.is_admin) {
    } else {

Other middlewares will come soon in the folder /lib/middlewares/. You'll just have to update the last line to require the middleware you need:

  Agendash(agenda, {
    middleware: "koa"

Note that if you use a CSRF protection middleware like csurf, you might need to configure it off for Agendash-routes.

Additional options

The second argument to Agendash is an optional object. Valid keys are:

  • middleware: Currently only 'express' is supported. I'd like to use 'koa' soon.
  • title: Defaults to "Agendash". Useful if you are running multiple Agenda pools.

Help appreciated

There are several things I would like help with:

  • [ ] I'm rusty with Backbone. Clean up the client code. I wasn't sure on the best way to trigger and handle update events.
  • [ ] Write some tests!
  • [ ] Use Agendash and submit issues!

Current Tags

  • 1.0.1                                ...           latest (10 months ago)

2 Versions

  • 1.0.1                                ...           10 months ago
  • 1.0.0                                ...           a year ago
Maintainers (1)
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (7)
Dev Dependencies (4)
Dependents (0)

Copyright 2014 - 2016 © |