Skip to content

Commit ec8ba40

Browse files
committed
Initial commit
0 parents  commit ec8ba40

File tree

100 files changed

+6883
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

100 files changed

+6883
-0
lines changed

.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
/assets
2+
/build
3+
/playground
4+
glance.yml

Dockerfile

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
FROM alpine:3.19
2+
3+
ARG TARGETOS
4+
ARG TARGETARCH
5+
6+
WORKDIR /app
7+
COPY build/glance-$TARGETOS-$TARGETARCH /app/glance
8+
9+
EXPOSE 8080/tcp
10+
ENTRYPOINT ["/app/glance"]

LICENSE

+661
Large diffs are not rendered by default.

README.md

+90
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
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+
![example homepage](docs/images/readme-main-image.png)
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+
![multiple color schemes example](docs/images/themes-example.png)
23+
24+
#### Optimized for mobile devices
25+
![mobile device previews](docs/images/mobile-preview.png)
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

Comments
 (0)