|
| 1 | +<p align="center"><em>What if you could see everything at a...</em></p> |
| 2 | +<h1 align="center">Glance</h1> |
| 3 | +<p align="center"><a href="#installation">Install</a> • <a href="docs/configuration.md">Configuration</a> • <a href="docs/themes.md">Themes</a></p> |
| 4 | + |
| 5 | + |
| 6 | + |
| 7 | +### Features |
| 8 | +#### Various widgets |
| 9 | +* RSS feeds |
| 10 | +* Subreddit posts |
| 11 | +* Weather |
| 12 | +* Bookmarks |
| 13 | +* Latest YouTube videos from specific channels |
| 14 | +* Calendar |
| 15 | +* Stocks |
| 16 | +* iframe |
| 17 | +* Twitch channels & top games |
| 18 | +* GitHub releases |
| 19 | +* Site monitor |
| 20 | + |
| 21 | +#### Themeable |
| 22 | + |
| 23 | + |
| 24 | +#### Optimized for mobile devices |
| 25 | + |
| 26 | + |
| 27 | +#### Fast and lightweight |
| 28 | +* Minimal JS, no bloated frameworks |
| 29 | +* Very few dependencies |
| 30 | +* Single, easily distributed <15mb binary and just as small docker container |
| 31 | +* All requests are parallelized, uncached pages usually load within ~1s (depending on internet speed and number of widgets) |
| 32 | + |
| 33 | +### Configuration |
| 34 | +Checkout the [configuration docs](docs/configuration.md) to learn more. A [preconfigured page](docs/configuration.md#preconfigured-page) is also available to get you started quickly. |
| 35 | + |
| 36 | +### Installation |
| 37 | +> [!CAUTION] |
| 38 | +> |
| 39 | +> The project is under active development, expect things to break every once in a while. |
| 40 | +
|
| 41 | +#### Manual |
| 42 | +Checkout the [releases page](https://github.com/glanceapp/glance/releases) for available binaries. You can place the binary inside `/opt/glance/` and have it start with your server via a [systemd service](https://linuxhandbook.com/create-systemd-services/). To specify a different path for the config file use the `--config` option: |
| 43 | + |
| 44 | +``` |
| 45 | +/opt/glance/glance --config /etc/glance.yml |
| 46 | +``` |
| 47 | + |
| 48 | +#### Docker |
| 49 | +> [!IMPORTANT] |
| 50 | +> |
| 51 | +> Make sure you have a valid `glance.yml` file before running the container. |
| 52 | +
|
| 53 | +```console |
| 54 | +docker run -d -p 8080:8080 \ |
| 55 | + -v ./glance.yml:/app/glance.yml \ |
| 56 | + -v /etc/timezone:/etc/timezone:ro \ |
| 57 | + -v /etc/localtime:/etc/localtime:ro \ |
| 58 | + glanceapp/glance |
| 59 | +``` |
| 60 | + |
| 61 | +Or if you prefer docker compose: |
| 62 | + |
| 63 | +```yaml |
| 64 | +services: |
| 65 | + glance: |
| 66 | + image: glanceapp/glance |
| 67 | + volumes: |
| 68 | + - ./glance.yml:/app/glance.yml |
| 69 | + - /etc/timezone:/etc/timezone:ro |
| 70 | + - /etc/localtime:/etc/localtime:ro |
| 71 | + ports: |
| 72 | + - 8080:8080 |
| 73 | + restart: unless-stopped |
| 74 | +``` |
| 75 | +
|
| 76 | +### Building from source |
| 77 | +
|
| 78 | +Requirements: [Go](https://go.dev/dl/) >= v1.22 |
| 79 | +
|
| 80 | +To build: |
| 81 | +
|
| 82 | +``` |
| 83 | +go build . |
| 84 | +``` |
| 85 | + |
| 86 | +To run: |
| 87 | + |
| 88 | +``` |
| 89 | +go run . |
| 90 | +``` |
0 commit comments