# Homer
+
A dead simple static **HOM**epage for your serv**ER** to keep your services on hand, from a simple `yaml` configuration file.
-**Check out the live demo [here](https://homer-demo.netlify.com/).**
+**Check out the live demo [here](https://homer-demo.netlify.app).**
+
+It supports keyboard shortcuts:
+
+* `/` Start searching.
+* `Escape` Stop searching.
+* `Enter` Open the first matching result (respects the bookmark's `_target` property).
+* `Alt`/`Option` + `Enter` Open the first matching result in a new tab.
If you need authentication support, you're on your own (it can be secured using a web server auth module or exposing it only through a VPN network / SSH tunnel, ...)
## Roadmap
-- [ ] Colors / theme customization
-- [ ] Enable PWA support (making possible to "install" - add to homescreen - it)
-- [ ] Improve maintenability (external library import & service workers cached file list.)
+* [ ] Colors / theme customization
+* [ ] Enable PWA support (making possible to "install" - add to homescreen - it)
+* [ ] Improve maintainability (external library import & service workers cached file list.)
## Installation
**How to build / install it?** There is no build system (😱), use it like that! It's meant to be stupid simple & zero maintenance required. Just copy the static files somewhere, and visit the `index.html`.
-
## Configuration
Title, icons, links, colors, and services can be configured in the `config.yml` file, using [yaml](http://yaml.org/) format.
-
```yaml
---
# Homepage configuration
# links: [] # Allows for navbar (dark mode, layout, and search) without any links
links:
- name: "ansible"
- icon: "fa-github"
+ icon: "fab fa-github"
url: "https://github.com/xxxxx/ansible/"
- target: '_blank' # optionnal html a tag target attribute
+ target: '_blank' # optional html a tag target attribute
- name: "Wiki"
- icon: "fa-book"
+ icon: "fas fa-book"
url: "https://wiki.xxxxxx.com/"
# Services
# Leave only a "items" key if not using group (group name, icon & tagstyle are optional, section separation will not be displayed).
services:
- name: "DevOps"
- icon: "fa-code-fork"
+ icon: "fa fa-code-fork"
items:
- name: "Jenkins"
logo: "/assets/tools/jenkins.png"
subtitle: "Continuous integration server"
tag: "CI"
url: "#"
- target: '_blank' # optionnal html a tag target attribute
+ target: '_blank' # optional html a tag target attribute
- name: "RabbitMQ Management"
logo: "/assets/tools/rabbitmq.png"
subtitle: "Manage & monitor RabbitMQ server"
tagstyle: "is-success"
url: "#"
- name: "Monitoring"
- icon: "fa-heartbeat"
+ icon: "fas fa-heartbeat"
items:
- name: "M/Monit"
logo: "/assets/tools/monit.png"
```json
{
- "style": null,
- "title": "Lorem ipsum 42",
- "content": "LA LA LA Lorem ipsum dolor sit amet, ....."
+ "style": null,
+ "title": "Lorem ipsum 42",
+ "content": "LA LA LA Lorem ipsum dolor sit amet, ....."
}
```