aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorEvan Steinkerchner <esteinkerchner@gmail.com>2022-03-23 09:42:03 -0400
committerEvan Steinkerchner <esteinkerchner@gmail.com>2022-03-23 09:42:03 -0400
commit2b53c1a82acc73a3f1d8b2ea0e55567f80c9120f (patch)
treef068271a3133ab75b5e628d13d68363af73ab274
parent828582351780582558cb0f4a475ef9eeb4dc1299 (diff)
downloadhomer-2b53c1a82acc73a3f1d8b2ea0e55567f80c9120f.tar.gz
homer-2b53c1a82acc73a3f1d8b2ea0e55567f80c9120f.tar.zst
homer-2b53c1a82acc73a3f1d8b2ea0e55567f80c9120f.zip
Cleaned up configuration page a bit
-rw-r--r--docs/configuration.md109
1 files changed, 72 insertions, 37 deletions
diff --git a/docs/configuration.md b/docs/configuration.md
index 84a7ea7..4f97192 100644
--- a/docs/configuration.md
+++ b/docs/configuration.md
@@ -1,6 +1,8 @@
1# Configuration 1# Configuration
2 2
3Title, icons, links, colors, and services can be configured in the `config.yml` file (located in `/assets` directory once built, or in the `public/assets` directory in development mode), using [yaml](http://yaml.org/) format. 3Title, icons, links, colors, and services can be configured in the `config.yml`
4file (located in `/assets` directory once built, or in the `public/assets`
5directory in development mode), using [yaml](http://yaml.org/) format.
4 6
5```yaml 7```yaml
6--- 8---
@@ -13,40 +15,57 @@ Title, icons, links, colors, and services can be configured in the `config.yml`
13 15
14title: "App dashboard" 16title: "App dashboard"
15subtitle: "Homer" 17subtitle: "Homer"
16# documentTitle: "Welcome" # Customize the browser tab text 18# Customize the browser tab text
19# documentTitle: "Welcome"
17logo: "assets/logo.png" 20logo: "assets/logo.png"
18# Alternatively a fa icon can be provided: 21# Alternatively a Font Awesome icon can be provided
19# icon: "fas fa-skull-crossbones" 22# icon: "fas fa-skull-crossbones"
20 23
21header: true # Set to false to hide the header 24# Set to false to hide the header
22# Optional: Different hotkey for search, defaults to "/" 25header: true
26# Set to false to hide the footer
27footer: >
28 <p>Created with <span class="has-text-danger">❤️</span> with
29 <a href="https://bulma.io/">bulma</a>,
30 <a href="https://vuejs.org/">vuejs</a>, &
31 <a href="https://fontawesome.com/">font awesome</a>
32 // Fork me on <a href="https://github.com/bastienwirtz/homer">
33 <i class="fab fa-github-alt"></i></a></p>
34
35# Use "auto" or number (must be a factor of 12: 1, 2, 3, 4, 6, 12)
36columns: "3"
37# Whether you want to display a message when the apps are not accessible
38# anymore (VPN disconnected for example)
39connectivityCheck: true
40
41# Optional: Set a different hotkey for search, defaults to "/"
23# hotkey: 42# hotkey:
24# search: "Shift" 43# search: "Shift"
25footer: '<p>Created with <span class="has-text-danger">❤️</span> with <a href="https://bulma.io/">bulma</a>, <a href="https://vuejs.org/">vuejs</a> & <a href="https://fontawesome.com/">font awesome</a> // Fork me on <a href="https://github.com/bastienwirtz/homer"><i class="fab fa-github-alt"></i></a></p>' # set false if you want to hide it.
26
27columns: "3" # "auto" or number (must be a factor of 12: 1, 2, 3, 4, 6, 12)
28connectivityCheck: true # whether you want to display a message when the apps are not accessible anymore (VPN disconnected for example)
29 44
30# Optional: Proxy / hosting option 45# Optional: Proxy / hosting option
31proxy: 46proxy:
32 useCredentials: false # send cookies & authorization headers when fetching service specific data. Set to `true` if you use an authentication proxy. Can be overrided on service level. 47 # Send cookies & authorization headers when fetching service specific data.
48 # Set to `true` if you use an authentication proxy. Can be overrided on
49 # service level.
50 useCredentials: false
33 51
34# Set the default layout and color scheme 52# Set the default layout and color scheme
35defaults: 53defaults:
36 layout: columns # Either 'columns', or 'list' 54 layout: columns # Either 'columns', or 'list'
37 colorTheme: auto # One of 'auto', 'light', or 'dark' 55 colorTheme: auto # One of 'auto', 'light', or 'dark'
38 56
39# Optional theming 57# Optional theming: 'default' or one of the themes available in
40theme: default # 'default' or one of the themes available in 'src/assets/themes'. 58# 'src/assets/themes'.
59theme: default
41 60
42# Optional custom stylesheet 61# Optional custom stylesheet
43# Will load custom CSS files. Especially useful for custom icon sets. 62# Will load custom CSS files. Especially useful for custom icon sets.
44# stylesheet: 63# stylesheet:
45# - "assets/custom.css" 64# - "assets/custom.css"
46 65
47# Here is the exhaustive list of customization parameters 66# Here is the exhaustive list of customization parameters, however all values
48# However all value are optional and will fallback to default if not set. 67# are optional and will fallback to default if not set. If you want to change
49# if you want to change only some of the colors, feel free to remove all unused key. 68# only some of the colors, feel free to remove all unused keys.
50colors: 69colors:
51 light: 70 light:
52 highlight-primary: "#3367d6" 71 highlight-primary: "#3367d6"
@@ -79,25 +98,30 @@ colors:
79 98
80# Optional message 99# Optional message
81message: 100message:
82 # url: "https://<my-api-endpoint>" # Can fetch information from an endpoint to override value below. 101 # Uses Bulma. See https://bulma.io/documentation/components/message/#colors
83 # mapping: # allows to map fields from the remote format to the one expected by Homer 102 # for styling options.
84 # title: 'id' # use value from field 'id' as title 103 style: "is-warning"
85 # content: 'value' # value from field 'value' as content 104 title: "Optional message!"
105 icon: "fa fa-exclamation-triangle"
106 content: "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
107
108 # Can optionally fetch information from an endpoint to override value below.
109 # url: "https://<my-api-endpoint>"
110 # mapping: # Select the appropriate fields from the response object.
111 # title: 'id' # Use value from field 'id' as title
112 # content: 'value' # Use value from field 'value' as content
86 # refreshInterval: 10000 # Optional: time interval to refresh message 113 # refreshInterval: 10000 # Optional: time interval to refresh message
87 # 114 #
88 # Real example using chucknorris.io for showing Chuck Norris facts as messages: 115 # Real example using chucknorris.io for showing Chuck Norris facts:
89 # url: https://api.chucknorris.io/jokes/random 116 # url: https://api.chucknorris.io/jokes/random
90 # mapping: 117 # mapping:
91 # title: 'id' 118 # title: 'id'
92 # content: 'value' 119 # content: 'value'
93 # refreshInterval: 10000 120 # refreshInterval: 10000
94 style: "is-warning"
95 title: "Optional message!"
96 icon: "fa fa-exclamation-triangle"
97 content: "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
98 121
99# Optional navbar 122# Optional navbar
100# links: [] # Allows for navbar (dark mode, layout, and search) without any links 123# Specify [] for navbar (dark mode, layout, and search) without any links
124# links: []
101links: 125links:
102 - name: "Link 1" 126 - name: "Link 1"
103 icon: "fab fa-github" 127 icon: "fab fa-github"
@@ -106,19 +130,22 @@ links:
106 - name: "link 2" 130 - name: "link 2"
107 icon: "fas fa-book" 131 icon: "fas fa-book"
108 url: "https://github.com/bastienwirtz/homer" 132 url: "https://github.com/bastienwirtz/homer"
109 # this will link to a second homer page that will load config from page2.yml and keep default config values as in config.yml file 133 # Urls starting with # will link to additional Homer pages. Passing "#page2"
110 # see url field and assets/page.yml used in this example: 134 # will load config from page2.yml as overrides on top of the default values
135 # set in this config.yml.
111 - name: "Second Page" 136 - name: "Second Page"
112 icon: "fas fa-file-alt" 137 icon: "fas fa-file-alt"
113 url: "#page2" 138 url: "#page2"
114 139
115# Services 140# Services
116# First level array represents a group. 141# First level array represents a group. Use only an "items" key if not using
117# Leave only a "items" key if not using group (group name, icon & tagstyle are optional, section separation will not be displayed). 142# groups (name, icon, & tagstyle are optional; section separation will not be
143# displayed).
118services: 144services:
119 - name: "Application" 145 - name: "Application"
120 icon: "fas fa-code-branch" 146 icon: "fas fa-code-branch"
121 # A path to an image can also be provided. Note that icon take precedence if both icon and logo are set. 147 # A path to an image can also be provided. Note that icon will take
148 # precedence if both icon and logo are set.
122 # logo: "path/to/logo" 149 # logo: "path/to/logo"
123 items: 150 items:
124 - name: "Awesome app" 151 - name: "Awesome app"
@@ -128,7 +155,8 @@ services:
128 subtitle: "Bookmark example" 155 subtitle: "Bookmark example"
129 tag: "app" 156 tag: "app"
130 url: "https://www.reddit.com/r/selfhosted/" 157 url: "https://www.reddit.com/r/selfhosted/"
131 target: "_blank" # optional html tag target attribute 158 # Optional: HTML <a> tag target attribute
159 target: "_blank"
132 - name: "Another one" 160 - name: "Another one"
133 logo: "assets/tools/sample2.png" 161 logo: "assets/tools/sample2.png"
134 subtitle: "Another application" 162 subtitle: "Another application"
@@ -141,13 +169,20 @@ services:
141 items: 169 items:
142 - name: "Pi-hole" 170 - name: "Pi-hole"
143 logo: "assets/tools/sample.png" 171 logo: "assets/tools/sample.png"
144 # subtitle: "Network-wide Ad Blocking" # optional, if no subtitle is defined, PiHole statistics will be shown 172 # Optional: If no subtitle is defined, PiHole statistics will be shown.
173 # subtitle: "Network-wide Ad Blocking"
145 tag: "other" 174 tag: "other"
146 url: "http://192.168.0.151/admin" 175 url: "http://192.168.0.151/admin"
147 type: "PiHole" # optional, loads a specific component that provides extra features. MUST MATCH a file name (without file extension) available in `src/components/services` 176 # Optional: Loads a specific component that provides extra features.
148 target: "_blank" # optional html a tag target attribute 177 # MUST MATCH a file name (without file extension) available in
149 # class: "green" # optional custom CSS class for card, useful with custom stylesheet 178 # `src/components/services`
150 # background: red # optional color for card to set color directly without custom stylesheet 179 type: "PiHole"
180 # Optional: HTML <a> tag target attribute
181 target: "_blank"
182 # Optional: Custom CSS class for card, useful with custom stylesheet
183 # class: "green"
184 # Optional: Set background color directly without custom stylesheet
185 # background: red
151``` 186```
152 187
153View [Custom Services](customservices.md) for details about all available custom services (like PiHole) and how to configure them. 188View [Custom Services](customservices.md) for details about all available custom services (like PiHole) and how to configure them.
@@ -167,7 +202,7 @@ Empty values (either in `config.yml` or the endpoint data) will hide the element
167 202
168## Style Options 203## Style Options
169 204
170Homer uses [bulma CSS](https://bulma.io/), which provides a [modifiers syntax](https://bulma.io/documentation/modifiers/syntax/). You'll notice in the config there is a `tagstyle` option. It can be set to any of the bulma modifiers. You'll probably want to use one of these 4 main colors: 205Homer uses [Bulma CSS](https://bulma.io/), which provides a [modifiers syntax](https://bulma.io/documentation/modifiers/syntax/). You'll notice in the config there is a `tagstyle` option. It can be set to any of the bulma modifiers. You'll probably want to use one of these 4 main colors:
171 206
172- `is-info` (blue) 207- `is-info` (blue)
173- `is-success` (green) 208- `is-success` (green)