Dashy - A Self-Hosted Home Lab Dashboard ๐
May 5, 2021โข552 words
Here's a quick project that I built in order to keep track of locally running services on my home lab. It serves as a landing page, to make it easier to navigate to various apps, without having to remember and type IP addresses or URLs.
Contents
Features
- Instant search by name, domain and tags - just start typing
- Full keyboard shortcuts for navigation, searching and launching
- Multiple color themes, with easy method for adding more
- Customizable layout options, and item sizes
- Quickly preview a website, by holding down the Alt key while clicking, to open it in a resizable pop-up modal
- Many options for icons, including full Font-Awesome support and the ability to auto-fetch icon from URLs favicon
- Additional info for each item visible on hover (including opening method icon and description as a tooltip)
- Option for full-screen background image, custom nav-bar links, and custom footer text
- User settings stored in local storage and applied on load
- Encrypted cloud backup and restore feature available
- Easy single-file YAML-based configuration
- Small bundle size, fully responsive UI and PWA makes the app easy to use on any device
- Plus lots more...
Source Code
Source, on GitHub: github.com/Lissy93/dashy
Live Demo
Screenshots
Usage Guide
For full setup instructions, see this post, or follow the GitHub readme.
Setup
Get the code: git clone git@github.com:Lissy93/dashy.git
and cd dashy
Then install the dependencies: yarn
Configuring
All settings are specified in ./public/conf.yml
. You can see a full list of options in the docs, or modify one of these example configs
Deploying
First build the project, with yarn build
, you can then run yarn start
to run it. Alternatively use Docker, with docker run -it -p 8080:80 --rm --name my-dashboard lissy93/dashy
Developing
Running yarn dev
will build, test, lint then start the development server and watch for changes
Similar Apps / Alternatives
There are a few self-hosted web apps, that serve a similar purpose to Dashy. Including, but not limited to: Dashboard, Dash Machine, Heimdall, HomeDash2, Homepage, Homer, Organizr and Simple-Dash
Credits
The app makes use of the following components, kudos to their respective authors
- vue-select - Dropdown component by @sagalbot
- vue-js-modal - Modal component by @euvl
- v-tooltip - Tooltip component by @Akryum
- vue-material-tabs - Tab view component by @jairoblatt
- VJsoneditor - Interactive JSON editor component by @yansenlei
- Forked from JsonEditor by @josdejong
And the app itself is built with Vue.js
License
Licensed under MIT X11, ยฉ Alicia Sykes 2021: https://aliciasykes.com