A minimal and lightweight dashboard for your self-hosted services (and bookmarks)
- Loads instantly + Remains light on resources
- Responsive design (uses Bootstrap framework)
- Shows Temperature, CPU load and Memory used by tapping into Glances API (default 5s updates)
- Built-in online check of services (checked only at time of page load/refresh, to minimize background activity & load)
- Several built-in Themes (easy to edit & add your own)
- Wallpaper backgrounds supported
- FontAwesome icons (also supports Self-hosted/Web image icons)
- All settings in a single easy to edit json file, with built-in editor
- Support for alternate configurations without needing multiple Dasherr installations
- Install any webserver under Docker (I myself use this one). Here is a Docker Compose example
- Drop all the files from Dasherr release into the
config/wwwfolder of nginx (or another webserver of your choice) - If all went well, Dasherr will be running on port 80 of your server
- Simply drop the files from Dasher release into your webserver's
wwwfolder - If all went well, Dasherr will be running on port 80 of your server
A sample settings.json is included in the release. It should be used as a template to edit/add your own Sections and Tiles (services). All the configuration settings are explained below.
The 'page' settings allow you to define these top-level options:
title- Title of your dashboardtheme- Name of current theme from the Themes section in settings.json fileopenTab- When you click on a service tile, this setting determines whether it's opened in a new tab or the same tab (possible valuesneworsame)
Sample:
"page": {
"title": "Dasherr",
"theme": "Onedark",
"openTab": "new"
}
This is an array of any number of widgets on your dashboard (single or multiple instances of each)
To keep with the minimalist theme and stay light on resources, there's only one type of widget currently supported - Glances.
Configurable settings:
name- (Optional) If set, it'll show a title for this widgettype-glancessettings > url- Service URL (including trailing slash/)settings > refreshMs- How many ms to wait before updating (default is 5000ms or 5 seconds)disable- (Optional) If set to1, this widget will not be loadedinfo- (Optional) Any description you'd like to add for this Widget - shows as a tooltip on mouse-hover
Sample:
"widgets": [
{
"name": "Stats",
"type": "glances",
"disable": 0,
"settings": {
"url": "http://homeserver:61208/",
"refreshMs": 5000
}
}
]
This is an array of any number of individual Sections in your dashboard.
Configurable settings:
name- Self-explanatorytiles- See belowinfo- (Optional) Any description you'd like to add for this Section - shows as a tooltip on mouse-hoverdisable- (Optional) If set to1, this Section will not be shown
This is an array of any number of individual Tiles (services) in a section.
Configurable settings:
name- Self-explanatoryurl- Service URL (including trailing slash/)faIcon- (Optional) The id of the FontAwesome icon you'd like to show for this serviceicon- (Optional) The url/path of the custom icon image you'd like to show for this serviceinfo- (Optional) Any description you'd like to add for this Tile - shows as a tooltip on mouse-hoverdisable- (Optional) If set to1, this Tile will not be showndisableCheck- (Optional) If set to1, the online check will not be performed for this TileopenTab- (Optional - Overrides page'sopenTabsetting) When you click on this tile, this setting determines whether it's opened in a new tab or the same tab (possible valuesneworsame)
Sample (Section and Tiles):
"sections": [
{
"name": "Maintenance",
"tiles": [
{
"name": "Portainer",
"url": "http://homeserver:9000/",
"faIcon": "fab fa-docker"
},
{
"name": "FileBrowser",
"url": "http://homeserver:8020/",
"faIcon": "fa fa-folder-tree"
}
]
}
]
Dasherr comes with several built-in themes, and you can easily add your own by copying any existing theme in settings file and making edits to the hex color values and/or add picture background.
Configurable settings:
background- This could be a local or web wallpaper backgroundcolorBg- This is the background color of the page (only matters ifbackgroundis not set)colorPr- This is the primary text color of the pagecolorSc- This is the secondary text color of the pagecolorOn- This is the color of the service enabled 'dot'colorOf- This is the color of the service disabled 'dot'
Sample:
"Onedark": {
"background": "",
"colorBg": "#282c34",
"colorPr": "#dfd9d6",
"colorSc": "#98c379",
"colorOn": "#98c379",
"colorOf": "#282c34"
}
Dasherr supports using alternate settings files. This allows having a different theme, a whole different set of sections/services on another Dasherr page without having multiple Dasherr installations. This file could group a different set of services (a self-hosted cloud instance, for example) or another home server etc.
Usage:
- Put the alternate settings file in Dasherr's root folder and put its name in
surl parameter.
See settings.sample.json for usage example, it loads settings.sh.json via index.php?s=settings.sh.json
- Flame : Very well made and clean looking static dashboard. I took the theme names and color swatches from Flame because they looked gorgeous to me, and for that I'm very grateful
- Dashy : Extremely flexible dashboard with a ton of features. The inspiration to use online 'dots' came from here
- r/selfhosted : I got interested into self-hosting towards the end of 2021, and since then I've learnt a lot from this subreddit

