diff --git a/.gitignore b/.gitignore
index d5f9a9a37..fef9e2f34 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,3 +25,5 @@ hasjob/static/gen
 *.gz
 *.bz2
 hasjob/assets/node_modules
+admindash-config.cfg
+flask_monitoringdashboard.db
diff --git a/admindash-config-sample.cfg b/admindash-config-sample.cfg
new file mode 100644
index 000000000..3fc60d6c3
--- /dev/null
+++ b/admindash-config-sample.cfg
@@ -0,0 +1,5 @@
+[dashboard]
+USERNAME=username
+PASSWORD=password
+CUSTOM_LINK=monitor
+GIT=./.git/
diff --git a/hasjob/__init__.py b/hasjob/__init__.py
index 93ead0be9..7b0102989 100644
--- a/hasjob/__init__.py
+++ b/hasjob/__init__.py
@@ -8,6 +8,7 @@
 from flask_rq import RQ
 from flask_mail import Mail
 from flask_redis import FlaskRedis
+import flask_monitoringdashboard as dashboard
 from flask_lastuser import Lastuser
 from flask_lastuser.sqlalchemy import UserManager
 from baseframe import baseframe, assets, Version
@@ -59,3 +60,16 @@
 redis_store.init_app(app)
 lastuser.init_app(app)
 lastuser.init_usermanager(UserManager(db, models.User))
+
+
+def get_user_id():
+    from coaster.auth import current_auth
+    if current_auth.user is not None:
+        return current_auth.user.username
+    else:
+        return 'anon'
+
+
+dashboard.config.get_group_by = get_user_id
+dashboard.config.init_from(file='admindash-config.cfg')
+dashboard.bind(app)
diff --git a/requirements.txt b/requirements.txt
index f19437954..7dbf8c975 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -31,3 +31,4 @@ git+https://github.com/hasgeek/flask-lastuser
 git+https://github.com/hasgeek/baseframe
 Flask-Migrate
 progressbar2
+flask_monitoringdashboard