X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;ds=inline;f=README.md;h=945fa1f7192393e737126a5c534c6d44aa366f76;hb=4a1e8717e90d1b0b516da2cbc1d16ff906d7fbdf;hp=1abce2f212a6298811f881d3b4c0a1bd33e1c88b;hpb=b9c5fcf085bed9c6100283133531b36bfbb06cf0;p=github%2Fbastienwirtz%2Fhomer.git diff --git a/README.md b/README.md index 1abce2f..945fa1f 100644 --- a/README.md +++ b/README.md @@ -1,218 +1,142 @@ -# Homer +
yaml
configuration file.
++ + Demo + ⢠+ Chat + ⢠+ Getting started + +
+ + ++ +
+ +## Table of Contents +- [Features](#features) +- [Getting started](#getting-started) +- [Configuration](docs/configuration.md) +- [Tips & tricks](docs/tips-and-tricks.md) +- [Roadmap](#roadmap) +- [Development](docs/development.md) + + +## Features +- [yaml](http://yaml.org/) file configuration +- Installable (pwa) +- Search +- Grouping +- Theme customization +- Offline heathcheck +- 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. + + +## Getting started + +Homer is a full static html/js dashboard, generated from the source in `/src` using webpack. It's meant to be served by an HTTP server, **it will not work if you open dist/index.html directly over file:// protocol**. + +See [documentation](docs/configuration.md) for information about the configuration (`assets/config.yml`) options. -A dead simple static **HOM**epage for your serv**ER** to keep your services on hand, from a simple `yaml` configuration file. +### Using docker -**Check out the live demo [here](https://homer-demo.netlify.app).** +To launch container: -It supports keyboard shortcuts: +```sh +docker run -d \ + -p 8080:8080 \ + -v :/www/assets \ + --restart=always \ + b4bz/homer:latest +``` -- `/` 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. +Default assets will be automatically installed in the `/www/assets` directory. Use `UID` and/or `GID` env var to change the assets owner (`docker run -e "UID=1000" -e "GID=1000" [...]`). -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, ...) +### Using docker-compose -![screenshot](https://raw.github.com/bastienwirtz/homer/master/screenshot.png) +The `docker-compose.yml` file must be edited to match your needs. +Set the port and volume (equivalent to `-p` and `-v` arguments): -## Roadmap +```yaml +volumes: + - /your/local/assets/:/www/assets +ports: + - 8080:8080 +``` -- [ ] Add more themes. -- [ ] Add support for custom service card (add custom feature to some service / app link) -- [x] Colors / theme customization -- [x] Enable PWA support (making possible to "install" - add to homescreen - it) -- [x] Improve maintainability (external library import & service workers cached file list.) +To launch container: -## Usage +```sh +cd /path/to/docker-compose.yml +docker-compose up -d +``` -### Using docker +Default assets will be automatically installed in the `/www/assets` directory. Use `UID` and/or `GID` env var to change the assets owner, also in `docker-compose.yml`: -```sh -sudo docker run -p 8080:8080 -v /your/local/config.yml:/www/config.yml -v /your/local/assets/:/www/assets b4bz/homer:latest +```yaml +environment: + - UID=1000 + - GID=1000 ``` -### Manually +### Using the release tarball (prebuilt, ready to use) -Homer is a static page that need to be generated from the source in this repository. -Use the folowing command to build the project: +Download and extract the latest release (`homer.zip`) from the [release page](https://github.com/bastienwirtz/homer/releases), rename the `assets/config.yml.dist` file to `assets/config.yml`, and put it behind a webserver. ```sh -# Using yarn (recommended) -yarn install -yarn build - -# **OR** Using npm -npm install -npm run build +wget https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip +unzip homer.zip +cd homer +cp assets/config.yml.dist assets/config.yml +npx serve # or python -m http.server 8010 or apache, nginx ... ``` -Then your dashboard is ready to use in the `/dist` directory. -Use it like any static HTML content (use a webserver or open the html index directly). - -## Developement +### Build manually ```sh # Using yarn (recommended) yarn install -yarn serve +yarn build # **OR** Using npm npm install -npm run serve -``` - -### themes - -Theme are meant to be simple customization (written in [scss](https://sass-lang.com/documentation/syntax)). -To addd a new theme, just add a file in the theme directory, and put all style in the `body #app.theme-Created with â¤ï¸ with bulma, vuejs & font awesome // Fork me on
' # set false if you want to hide it.header: - -# Optional theming -theme: default # 'default' or one of the theme available in 'src/assets/themes'. - -# Here is the exaustive list of customization parameters -# However all value are optional and will fallback to default if not set. -# if you want to change only some of the colors, feel free to remove all unused key. -colors: - light: - highlight-primary: "#3367d6" - highlight-secondary: "#4285f4" - highlight-hover: "#5a95f5" - background: "#f5f5f5" - card-background: "#ffffff" - text: "#363636" - text-header: "#424242" - text-title: "#303030" - text-subtitle: "#424242" - card-shadow: rgba(0, 0, 0, 0.1) - link-hover: "#363636" - dark: - highlight-primary: "#3367d6" - highlight-secondary: "#4285f4" - highlight-hover: "#5a95f5" - background: "#131313" - card-background: "#2b2b2b" - text: "#eaeaea" - text-header: "#ffffff" - text-title: "#fafafa" - text-subtitle: "#f5f5f5" - card-shadow: rgba(0, 0, 0, 0.4) - link-hover: "#ffdd57" - -# Optional message -message: - # url: "https://