X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=README.md;h=945fa1f7192393e737126a5c534c6d44aa366f76;hb=c0044cc7653329044458fb233757b935893cd1a9;hp=3a621d599e295fcedc390f684f6738cdca89c3dc;hpb=c424ddba7207903d31c5371a93adab492dc117fc;p=github%2Fbastienwirtz%2Fhomer.git diff --git a/README.md b/README.md index 3a621d5..945fa1f 100644 --- a/README.md +++ b/README.md @@ -1,129 +1,142 @@ -# Homer -A dead simple static **HOM**epage for your serv**ER** to keep your services on hand, from a simple `yaml` configuration file. +
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. -**Check out the live demo [here](https://homer-demo.netlify.app).** - -It supports keyboard shortcuts: +### Using docker -* `/` 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. +To launch container: -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, ...) +```sh +docker run -d \ + -p 8080:8080 \ + -v :/www/assets \ + --restart=always \ + b4bz/homer:latest +``` -![screenshot](https://raw.github.com/bastienwirtz/homer/master/screenshot.png) +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" [...]`). -## Roadmap +### Using docker-compose -- [ ] Colors / theme customization -- [ ] Enable PWA support (making possible to "install" - add to homescreen - it) -- [ ] Improve maintenability (external library import & service workers cached file list.) +The `docker-compose.yml` file must be edited to match your needs. +Set the port and volume (equivalent to `-p` and `-v` arguments): -## Installation +```yaml +volumes: + - /your/local/assets/:/www/assets +ports: + - 8080:8080 +``` -### Using docker +To launch container: ```sh -sudo docker run -p 8080:8080 -v /your/local/config.yml:/www/config.yml -v /your/local/assets/:/www/assets b4bz/homer:latest +cd /path/to/docker-compose.yml +docker-compose up -d ``` -### Manually +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`: -**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`. +```yaml +environment: + - UID=1000 + - GID=1000 +``` +### Using the release tarball (prebuilt, ready to use) -## Configuration +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. -Title, icons, links, colors, and services can be configured in the `config.yml` file, using [yaml](http://yaml.org/) format. +```sh +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 ... +``` +### Build manually -```yaml ---- -# Homepage configuration -# See https://fontawesome.com/icons for icons options - -title: "Simple homepage" -subtitle: "Homer" -logo: "assets/homer.png" -# Alternatively a fa icon can be provided: -# icon: "fas fa-skull-crossbones" -footer: 'Created with â¤ï¸ with bulma, vuejs & font awesome // Fork me on
' # set false if you want to hide it.header: - -# Optional message -message: - # url: "https://