mrkeyoor.com_
Fri 25 Sept 00:04 UTC
Self-Hostedevaluationupdated 26 Aug 2026

glance review

Glance is a self-hosted start page that collects RSS, videos, weather, market prices, server status, bookmarks, and other feeds into a YAML-defined dashboard. It replaces a row of separate tabs with one fast page that works well on phones and desktops.

+74stars / 7d
Verdict

Our Glance build took 41 seconds and its single discovered Go test passed in 11 seconds, while the checkout stayed at 17.9 MB. It is an excellent fit for a read-mostly personal dashboard whose owner is happy editing YAML and refreshing the page for current feeds. Pick a feed reader for reading workflows or a monitoring system for alerts; Glance is a carefully composed start page, not either of those systems.

We ran it

Lab card: what happened when we ran glanceScreenshot of glance (github.com/glanceapp/glance)
Install✓ · 34s36 packages
Build✓ · 41s
Tests✓ · 11s1 passed · 0 failed of 1 (go test)
Repo238 files~12,589 lines of source · 17.9 MB · 1 CI workflows · Dockerfile

Answers from our run

Does glance build from source?

Dependencies installed in 34 seconds (36 packages), and the build succeeded in 41 seconds. We cloned commit 20672ee into a clean Debian container with 3 CPUs and no project-specific setup.

Do glance's tests pass?

Yes: 1 of 1 passed when we ran the project's own test command (go test). Some failures need services or credentials a bare container does not have.

Who should not use glance?

Anyone seeking a full feed reader: Glance fetches on page load, needs a refresh for most updates, and does not synchronize read state across devices.

What are the alternatives to glance?

Homepage, Homer, Dashy. Our Glance build took 41 seconds and its single discovered Go test passed in 11 seconds, while the checkout stayed at 17.

Setup5/5Small binary and direct Compose path with clear starter files
Docs5/5Detailed widget, auth, secret, theme, and deployment guidance
Community5/5Large audience with recent pushes and active issue discussion
Maturity4/5Focused stable product, though the discovered test set is tiny

Discussed on

  1. hnGlance: A self-hosted dashboard that puts all your feeds in one place211 points
  2. hnShow HN: Glancy - Article lengths at a glance6 points
  3. hnA self-hosted dashboard that puts all your feeds in one place5 points

Who it’s for

Self-hosters who want news, service status, releases, and personal links on one page.
People comfortable describing a dashboard in YAML rather than arranging it through a visual editor.
Home-server operators who value a small Go binary and a simple container.
Users who want custom API, extension, iframe, and HTML widgets when built-ins fall short.

Who it’s NOT for

Anyone seeking a full feed reader: Glance fetches on page load, needs a refresh for most updates, and does not synchronize read state across devices.
Users who insist on drag-and-drop page building: layouts, credentials, widgets, and themes live in YAML and related files.
VPS operators expecting Reddit posts to work without extra setup: the documentation says Reddit blocks unauthorized API access from VPS addresses, requiring app credentials, a proxy, or a VPN route.
Monitoring teams that need alerting or authoritative health: an open v0.8.5 report says a grouped Docker service may show OK while a child container is unhealthy.
Non-English households that need a translated interface: translation remains an open feature request.

Setup reality

Our Go dependency step succeeded in 34 seconds and installed 36 packages. The build passed in 41 seconds. Tests finished in 11 seconds, with 1 passing and 0 failing of 1 discovered Go test.

The recommended Docker Compose path needs a config directory and YAML edits. Tokens and passwords can come from environment variables or Docker secrets; public deployments should configure Glance authentication, a generated secret key, and correct proxy headers.

Prebuilt binaries avoid a container, while source builds require Go 1.23 or newer. External feeds can rate-limit or block the server, and most content refreshes only when the page is loaded.

Glance is a start page for feeds, not a feed reader

Glance assembles the information someone checks repeatedly into one page. Built-in widgets cover RSS, Hacker News, Reddit, YouTube, Twitch, weather, markets, releases, Docker containers, server statistics, bookmarks, calendars, and search. A user can add custom API responses, external extensions, iframes, or static HTML when the supplied list is not enough. The mobile layout receives the same attention as the desktop view.

Its small shape is credible. Our checkout held 238 files, about 12,589 source lines, and 17.9 MB. The server is written in Go, with minimal browser JavaScript and prebuilt binaries for common operating systems and architectures. That makes Glance easier to place on a home server than dashboards that require a database, a JavaScript build chain, and several background workers merely to show a start page.

The boundary is equally important. Most widgets do not poll continuously in the browser. Glance fetches information when the page loads, caches it for a widget-specific period, and generally requires a refresh before new items appear. Issue 201 asks for synchronized read state because opened RSS and video items are not tracked across devices. People who process an inbox should use a feed reader. Glance is for scanning.

YAML gives precise layouts and demands patient editing

Pages contain columns, columns contain widgets, and the YAML file controls names, sizes, caching, styles, credentials, and data sources. Included files keep a large setup manageable. Environment interpolation and Docker-secret syntax prevent many tokens from sitting directly in the main file. Config auto-reload helps during editing, although the documentation warns that a reload clears cached data and can trigger fresh requests to rate-limited services.

The 36 Go packages installed in our run are a much smaller dependency set than most web dashboards carry. Operational complexity moves into configuration instead. A useful page may include a dozen feed URLs, channel identifiers, market symbols, repository names, monitor endpoints, and credentials. There is no visual layout builder in the documented workflow. Errors such as declaring pages in both a root file and an included page produce YAML unmarshalling failures that the common-issues section explains.

Customization goes deeper than changing colors. Theme values adjust background, contrast, saturation, light mode, and preset selection; a user stylesheet can target each widget type. Custom API widgets combine JSON selectors with Go templates, while extensions can return HTML. The documentation puts a conspicuous warning on allowing extension HTML. Treat third-party extension URLs as code with access to the dashboard page, particularly when that page also exposes private service information.

What happened when we ran it

Our dependency step succeeded in 34 seconds and installed 36 Go packages. Building the application took 41 seconds and completed successfully in a fresh Debian container. The source checkout measured 17.9 MB, so both cloning and compilation were painless under the supplied 3-CPU and 8 GB limits.

Tests finished in 11 seconds. Go reported 1 passing test and 0 failures out of 1 discovered test. That is a green result, but the discovered test surface is very small for 12,589 lines of source and many network-backed widgets. The repository has no tests directory and 1 CI workflow file. We would smoke-test the exact widgets and authentication settings used in a deployment instead of treating one passing package as broad regression coverage.

No package vulnerability figure was supplied by the lab block for this Go run, so this review does not invent one. The measurement establishes a clean install, successful compile, and a short passing test command at commit 20672ee. It does not measure page latency, memory use, widget accuracy, or behavior against live third-party services. The README's performance statements remain the project's claims, not ours.

External services decide which widgets keep working

A dashboard that aggregates other sites inherits their policy changes. Glance's own configuration guide says Reddit blocks unauthorized API access from VPS addresses. The documented choices are registering a Reddit application, sending requests through a proxy, or routing traffic through a VPN. Issue 1016 reflects the same friction after Reddit restricted unauthenticated JSON access. A default example containing Reddit can therefore need credentials before it behaves like the screenshot.

The Docker status widget also should not become an alerting authority. Issue 1043 reports that version 0.8.5 can label a grouped service OK when one child container is unhealthy. Glance is good at putting status beside weather and news; it does not send alerts or promise the semantics of a monitoring platform. Keep Prometheus, Uptime Kuma, or another monitoring system responsible for incidents, then display a convenient summary here.

Authentication is available for dashboards containing private feeds or server data. Glance supports users and passwords, password hashes, a generated secret key, and automatic blocking after 5 failed attempts within 5 minutes. Behind a reverse proxy, the proxied setting must be enabled and forwarded headers must be correct so the block applies to the actual client address. Issue 1053 notes that the login form does not suit non-interactive displays that expect HTTP basic authentication.

Current development supports a focused recommendation

GitHub showed 36,596 stars, a last push on 2026-08-21, and 312 open issues and pull requests combined. Release v0.8.5 arrived on 2026-05-30. Recent issue activity covers live updates, Reddit access, IPv6 Docker URLs, RSS rendering, and container health, which matches a maintained project with real-world integration friction rather than an idle repository.

Glance is one of the easiest recommendations in the self-hosted dashboard category because it knows what it is. The 41-second build and 17.9 MB checkout support the lightweight pitch. Its weaknesses are also easy to name: YAML is the interface, updates mostly follow page loads, third-party feeds break, and the single discovered test offers limited reassurance. Accept those boundaries and it makes a calm, useful home page without becoming another platform to operate.

Alternatives

ProjectWhat it isPick it when
Homepage gh↗A service-focused home dashboard with many integrations and Docker discovery.pick this instead when application links, infrastructure integrations, and service discovery matter more than Glance's feed-heavy layout.
HomerA static, YAML-configured home page centered on organized service links.pick this instead when you want a simpler bookmark portal with little server-side data fetching.
DashyA configurable home dashboard with widgets, status checks, themes, and a visual editor.pick this instead when browser-based customization and a larger feature set outweigh a small Go deployment.

What people are saying

  1. [github-trending] glanceapp/glance

Sources

  1. Glance README
  2. Glance configuration documentation
  3. Glance repository
  4. Glance v0.8.5 release
  5. Docker group health issue 1043
  6. Cross-device read-state request 201

More self-hosted reviews

autobrr · AgentENV · LibreChat · hosts · Atomic-Chat · omakade · the whole board →