diff options
-rw-r--r-- | CONTRIBUTING.md | 4 | ||||
-rw-r--r-- | README.md | 22 | ||||
-rw-r--r-- | docker-compose.yml | 2 | ||||
-rw-r--r-- | docs/configuration.md | 6 | ||||
-rw-r--r-- | docs/tips-and-tricks.md | 16 | ||||
-rw-r--r-- | src/App.vue | 9 |
6 files changed, 31 insertions, 28 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 458a147..a744c8a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md | |||
@@ -26,7 +26,7 @@ First of all, we expect everyone (contributors and maintainers alike) to respect | |||
26 | For all contributions, please respect the following guidelines: | 26 | For all contributions, please respect the following guidelines: |
27 | 27 | ||
28 | * Each pull request should implement ONE feature or bugfix. If you want to add or fix more than one thing, submit more than one pull request. | 28 | * Each pull request should implement ONE feature or bugfix. If you want to add or fix more than one thing, submit more than one pull request. |
29 | * Do not commit changes to files that are irrelevant to your feature or bugfix (eg: `.gitignore`). | 29 | * Do not commit changes to files that are irrelevant to your feature or bugfix (e.g. `.gitignore`). |
30 | * Do not add unnecessary dependencies. | 30 | * Do not add unnecessary dependencies. |
31 | * Be aware that the pull request review process is not immediate, and is generally proportional to the size of the pull request. | 31 | * Be aware that the pull request review process is not immediate, and is generally proportional to the size of the pull request. |
32 | 32 | ||
@@ -34,7 +34,7 @@ For all contributions, please respect the following guidelines: | |||
34 | 34 | ||
35 | ### Discuss about ideas | 35 | ### Discuss about ideas |
36 | 36 | ||
37 | If you want to add a feature, it's often best to talk about it before starting working on it and submitting a pull request. It's not mandatory at all, but | 37 | If you want to add a feature, it's often best to talk about it before starting to work on it and submitting a pull request. It's not mandatory at all, but |
38 | feel free to open an issue to present your idea. | 38 | feel free to open an issue to present your idea. |
39 | 39 | ||
40 | ### How to submit a contribution | 40 | ### How to submit a contribution |
@@ -8,7 +8,7 @@ | |||
8 | </h1> | 8 | </h1> |
9 | 9 | ||
10 | <h4 align="center"> | 10 | <h4 align="center"> |
11 | A dead simple static <strong>HOM</strong>epage for your serv<strong>ER</strong> to keep your services on hand, from a simple `yaml` configuration file. | 11 | A dead simple static <strong>HOM</strong>epage for your serv<strong>ER</strong> to keep your services on hand, from a simple <code>yaml</code> configuration file. |
12 | </h4> | 12 | </h4> |
13 | 13 | ||
14 | <p align="center"> | 14 | <p align="center"> |
@@ -44,7 +44,7 @@ | |||
44 | - [Getting started](#getting-started) | 44 | - [Getting started](#getting-started) |
45 | - [Configuration](docs/configuration.md) | 45 | - [Configuration](docs/configuration.md) |
46 | - [Tips & tricks](docs/tips-and-tricks.md) | 46 | - [Tips & tricks](docs/tips-and-tricks.md) |
47 | - [Roadmap](#roadmap) | 47 | - [Roadmap](#roadmap) |
48 | - [Development](docs/development.md) | 48 | - [Development](docs/development.md) |
49 | 49 | ||
50 | 50 | ||
@@ -52,7 +52,7 @@ | |||
52 | - [yaml](http://yaml.org/) file configuration | 52 | - [yaml](http://yaml.org/) file configuration |
53 | - Installable (pwa) | 53 | - Installable (pwa) |
54 | - Search | 54 | - Search |
55 | - Grouping | 55 | - Grouping |
56 | - Theme customization | 56 | - Theme customization |
57 | - Offline heathcheck | 57 | - Offline heathcheck |
58 | - keyboard shortcuts: | 58 | - keyboard shortcuts: |
@@ -70,7 +70,7 @@ See [documentation](docs/configuration.md) for information about the configurati | |||
70 | 70 | ||
71 | ### Using docker | 71 | ### Using docker |
72 | 72 | ||
73 | To launch container : | 73 | To launch container: |
74 | 74 | ||
75 | ```sh | 75 | ```sh |
76 | docker run -p 8080:8080 -v /your/local/assets/:/www/assets b4bz/homer:latest | 76 | docker run -p 8080:8080 -v /your/local/assets/:/www/assets b4bz/homer:latest |
@@ -81,7 +81,7 @@ Default assets will be automatically installed in the `/www/assets` directory. U | |||
81 | ### Using docker-compose | 81 | ### Using docker-compose |
82 | 82 | ||
83 | The `docker-compose.yml` file must be edited to match your needs. | 83 | The `docker-compose.yml` file must be edited to match your needs. |
84 | Set the port and volume (equivalent to -p and -v arguments) : | 84 | Set the port and volume (equivalent to `-p` and `-v` arguments): |
85 | 85 | ||
86 | ```yaml | 86 | ```yaml |
87 | volumes: | 87 | volumes: |
@@ -90,25 +90,25 @@ ports: | |||
90 | - 8080:8080 | 90 | - 8080:8080 |
91 | ``` | 91 | ``` |
92 | 92 | ||
93 | To launch container : | 93 | To launch container: |
94 | 94 | ||
95 | ```sh | 95 | ```sh |
96 | cd /path/to/docker-compose.yml | 96 | cd /path/to/docker-compose.yml |
97 | docker-compose up -d | 97 | docker-compose up -d |
98 | ``` | 98 | ``` |
99 | 99 | ||
100 | 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` : | 100 | 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`: |
101 | 101 | ||
102 | ```yaml | 102 | ```yaml |
103 | environment: | 103 | environment: |
104 | - UID=1000 | 104 | - UID=1000 |
105 | - GID=1000 | 105 | - GID=1000 |
106 | ``` | 106 | ``` |
107 | 107 | ||
108 | ### Using the release tarball (prebuilt, ready to use) | 108 | ### Using the release tarball (prebuilt, ready to use) |
109 | 109 | ||
110 | Download and extract the latest 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. | 110 | 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. |
111 | 111 | ||
112 | ```sh | 112 | ```sh |
113 | wget https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip | 113 | wget https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip |
114 | unzip homer.zip | 114 | unzip homer.zip |
diff --git a/docker-compose.yml b/docker-compose.yml index 85e9156..884703c 100644 --- a/docker-compose.yml +++ b/docker-compose.yml | |||
@@ -3,6 +3,8 @@ version: "2" | |||
3 | services: | 3 | services: |
4 | homer: | 4 | homer: |
5 | image: b4bz/homer | 5 | image: b4bz/homer |
6 | #To build from source, comment previous line and uncomment below | ||
7 | #build: . | ||
6 | container_name: homer | 8 | container_name: homer |
7 | volumes: | 9 | volumes: |
8 | - /your/local/assets/:/www/assets | 10 | - /your/local/assets/:/www/assets |
diff --git a/docs/configuration.md b/docs/configuration.md index 32de050..681d62a 100644 --- a/docs/configuration.md +++ b/docs/configuration.md | |||
@@ -25,14 +25,14 @@ columns: "3" # "auto" or number (must be a factor of 12: 1, 2, 3, 4, 6, 12) | |||
25 | connectivityCheck: true # whether you want to display a message when the apps are not accessible anymore (VPN disconnected for example) | 25 | connectivityCheck: true # whether you want to display a message when the apps are not accessible anymore (VPN disconnected for example) |
26 | 26 | ||
27 | # Optional theming | 27 | # Optional theming |
28 | theme: default # 'default' or one of the theme available in 'src/assets/themes'. | 28 | theme: default # 'default' or one of the themes available in 'src/assets/themes'. |
29 | 29 | ||
30 | # Optional custom stylesheet | 30 | # Optional custom stylesheet |
31 | # Will load custom CSS files. Especially useful for custom icon sets. | 31 | # Will load custom CSS files. Especially useful for custom icon sets. |
32 | # stylesheet: | 32 | # stylesheet: |
33 | # - "assets/custom.css" | 33 | # - "assets/custom.css" |
34 | 34 | ||
35 | # Here is the exaustive list of customization parameters | 35 | # Here is the exhaustive list of customization parameters |
36 | # However all value are optional and will fallback to default if not set. | 36 | # However all value are optional and will fallback to default if not set. |
37 | # if you want to change only some of the colors, feel free to remove all unused key. | 37 | # if you want to change only some of the colors, feel free to remove all unused key. |
38 | colors: | 38 | colors: |
@@ -83,7 +83,7 @@ links: | |||
83 | url: "https://github.com/bastienwirtz/homer" | 83 | url: "https://github.com/bastienwirtz/homer" |
84 | 84 | ||
85 | # Services | 85 | # Services |
86 | # First level array represent a group. | 86 | # First level array represents a group. |
87 | # Leave only a "items" key if not using group (group name, icon & tagstyle are optional, section separation will not be displayed). | 87 | # Leave only a "items" key if not using group (group name, icon & tagstyle are optional, section separation will not be displayed). |
88 | services: | 88 | services: |
89 | - name: "Application" | 89 | - name: "Application" |
diff --git a/docs/tips-and-tricks.md b/docs/tips-and-tricks.md index 9f35987..2719fc5 100644 --- a/docs/tips-and-tricks.md +++ b/docs/tips-and-tricks.md | |||
@@ -48,36 +48,36 @@ and then simply reference these pre-defined (anchored) tags in each item like so | |||
48 | ```yaml | 48 | ```yaml |
49 | - name: "VS Code" | 49 | - name: "VS Code" |
50 | logo: "/assets/vscode.png" | 50 | logo: "/assets/vscode.png" |
51 | subtitle: "Develope Code Anywhere, On Anything!" | 51 | subtitle: "Develop Code Anywhere, On Anything!" |
52 | <<: *App # Regerence to the predefined "App" Tag | 52 | <<: *App # Reference to the predefined "App" Tag |
53 | url: "https://vscode.example.com/" | 53 | url: "https://vscode.example.com/" |
54 | target: "_blank" # optional html tag target attribute | 54 | target: "_blank" # optional html tag target attribute |
55 | ```` | 55 | ```` |
56 | 56 | ||
57 | Then when Homer reads your config, it will substitute your anchors automatically, the the above example is equal to: | 57 | Then when Homer reads your config, it will substitute your anchors automatically, the above example is equal to: |
58 | 58 | ||
59 | ```yaml | 59 | ```yaml |
60 | - name: "VS Code" | 60 | - name: "VS Code" |
61 | logo: "/assets/vscode.png" | 61 | logo: "/assets/vscode.png" |
62 | subtitle: "Develope Code Anywhere, On Anything!" | 62 | subtitle: "Develop Code Anywhere, On Anything!" |
63 | tag: "App" | 63 | tag: "App" |
64 | tagstyle: "is-medium is-info" | 64 | tagstyle: "is-medium is-info" |
65 | url: "https://vscode.example.com/" | 65 | url: "https://vscode.example.com/" |
66 | target: "_blank" # optional html tag target attribute | 66 | target: "_blank" # optional html tag target attribute |
67 | ``` | 67 | ``` |
68 | 68 | ||
69 | The end result is that if you want to update the name or style of any particular tag, just update it once, in the tags section! | 69 | The end result is that if you want to update the name or style of any particular tag, just update it once, in the tags section! |
70 | Great if you have a lot of services or a lot of tags! | 70 | Great if you have a lot of services or a lot of tags! |
71 | 71 | ||
72 | ## Remotely edit your config with Code Server | 72 | ## Remotely edit your config with Code Server |
73 | #### `by @JamiePhonic` | 73 | #### `by @JamiePhonic` |
74 | 74 | ||
75 | Homer doesn't yet provide a way to edit your configuration from inside Homer itself, but that doesn't mean it cant be done! | 75 | Homer doesn't yet provide a way to edit your configuration from inside Homer itself, but that doesn't mean it can't be done! |
76 | 76 | ||
77 | You can setup and use [Code-Server](https://github.com/cdr/code-server) to edit your `config.yml` file from anywhere! | 77 | You can setup and use [Code-Server](https://github.com/cdr/code-server) to edit your `config.yml` file from anywhere! |
78 | 78 | ||
79 | If you're running Homer in docker, you can setup a Code-Server container and pass your homer config directory into it. | 79 | If you're running Homer in docker, you can setup a Code-Server container and pass your homer config directory into it. |
80 | Simply pass your homer config directory as and extra -v parameter to your code-server container: | 80 | Simply pass your homer config directory as an extra -v parameter to your code-server container: |
81 | ``` | 81 | ``` |
82 | -v '/your/local/homer/config-dir/':'/config/homer':'rw' | 82 | -v '/your/local/homer/config-dir/':'/config/homer':'rw' |
83 | ``` | 83 | ``` |
@@ -85,7 +85,7 @@ This will map your homer config directory (For example, /docker/appdata/homer/) | |||
85 | 85 | ||
86 | As a bonus, Code-Server puts the "current folder" as a parameter in the URL bar, so you could add a `links:` entry in Homer that points to your code-server instance with the directory pre-filled for essentially 1 click editing! | 86 | As a bonus, Code-Server puts the "current folder" as a parameter in the URL bar, so you could add a `links:` entry in Homer that points to your code-server instance with the directory pre-filled for essentially 1 click editing! |
87 | 87 | ||
88 | For example: | 88 | For example: |
89 | ```yml | 89 | ```yml |
90 | links: | 90 | links: |
91 | - name: Edit config | 91 | - name: Edit config |
diff --git a/src/App.vue b/src/App.vue index d97df0c..dc473ca 100644 --- a/src/App.vue +++ b/src/App.vue | |||
@@ -65,8 +65,8 @@ | |||
65 | {{ group.name }} | 65 | {{ group.name }} |
66 | </h2> | 66 | </h2> |
67 | <Service | 67 | <Service |
68 | v-for="item in group.items" | 68 | v-for="(item, index) in group.items" |
69 | :key="item.name" | 69 | :key="index" |
70 | v-bind:item="item" | 70 | v-bind:item="item" |
71 | :class="['column', `is-${12 / config.columns}`]" | 71 | :class="['column', `is-${12 / config.columns}`]" |
72 | /> | 72 | /> |
@@ -88,9 +88,9 @@ | |||
88 | {{ group.name }} | 88 | {{ group.name }} |
89 | </h2> | 89 | </h2> |
90 | <Service | 90 | <Service |
91 | v-for="item in group.items" | 91 | v-for="(item, index) in group.items" |
92 | :key="index" | ||
92 | v-bind:item="item" | 93 | v-bind:item="item" |
93 | :key="item.url" | ||
94 | /> | 94 | /> |
95 | </div> | 95 | </div> |
96 | </div> | 96 | </div> |
@@ -199,6 +199,7 @@ export default { | |||
199 | matchesFilter: function (item) { | 199 | matchesFilter: function (item) { |
200 | return ( | 200 | return ( |
201 | item.name.toLowerCase().includes(this.filter) || | 201 | item.name.toLowerCase().includes(this.filter) || |
202 | (item.subtitle && item.subtitle.toLowerCase().includes(this.filter)) || | ||
202 | (item.tag && item.tag.toLowerCase().includes(this.filter)) | 203 | (item.tag && item.tag.toLowerCase().includes(this.filter)) |
203 | ); | 204 | ); |
204 | }, | 205 | }, |