mrkeyoor.com_
Mon 10 Aug 17:50 UTC
Self-Hostedevaluationupdated 10 Aug 2026

glance

Glance is a self-hosted home dashboard that puts RSS feeds, videos, weather, server status, markets, and other frequently checked information on one page. It replaces a row of bookmarks and separate status tabs with a fast, phone-friendly start page that you control.

Verdict

Glance is the best fit for a self-hoster who wants a polished information page without adopting a full portal platform. The compact binary, broad widget set, mobile layout, and clear configuration model make it easy to keep once the YAML is finished. Choose something else if you need live updates, cross-device state, localization, or a dashboard that nontechnical household members can edit.

Setup4/5Quick Compose start, followed by hands-on YAML customization
Docs5/5Excellent widget, auth, secrets, proxy, and troubleshooting guides
Community4/5Large adoption and active issues and PRs despite a busy queue
Maturity4/5Stable core with concrete gaps in state, refresh, and localization

Who it’s for

  • Self-hosters who want one attractive landing page for feeds, services, and server information.
  • Docker users comfortable describing pages and widgets in YAML.
  • People who value a small Go service and mostly server-rendered interface over a large web application.
  • Tinkerers willing to build special widgets with JSON APIs, templates, iframes, or community extensions.

Who it’s NOT for

  • Anyone expecting a live operations wallboard: the README says most information updates only when the page is refreshed, and background requests are not made periodically.
  • Households that need read or hidden-item state synchronized across devices: the open mark-as-read request says that tracking currently stays in the browser being used.
  • Users who need a translated interface today: translation support remains an open feature request, while the project and its documentation are in English.
  • People displaying a protected dashboard in non-interactive software such as Wallpaper Engine: built-in authentication presents a login form, and HTTP Basic authentication is still an open request.
  • Anyone depending on Reddit as a reliable primary feed: release v0.8.5 added an API bypass, but its notes explicitly warn that the workaround may not last or work for everybody.

Setup reality

The recommended Docker Compose template can put Glance on port 8080 within minutes, and the supplied page is useful enough to prove the service works. Turning it into your dashboard takes longer: you must learn its page, column, group, and widget YAML, add API credentials where required, and tune caches so upstream services or local DNS are not flooded. Internet exposure also means generating an authentication secret, hashing passwords, configuring the reverse proxy correctly, and handling widget tokens through environment variables, files, or Docker secrets. Custom API widgets are powerful, but the documentation honestly says they require basic programming, HTML, CSS, Go templates, and Glance-specific knowledge.

A dashboard that behaves like a well-made start page

Glance has a disciplined idea of what a self-hosted dashboard should be. It gathers information you already check, including RSS articles, YouTube uploads, Twitch channels, weather, market prices, releases, Docker health, and server statistics, then renders it as a clean page. It is less interested in becoming a full household portal than Homepage or Homarr. That narrower focus is why it feels quick and coherent.

The implementation supports the pitch. Glance is written in Go, ships as a binary under 20 MB and a similarly small container, and uses minimal vanilla JavaScript. The README says an uncached page usually loads in about one second, depending on the network and widget mix. The layout adapts to mobile, and themes can be changed by adjusting a small set of values.

This makes Glance especially good as a personal browser home page. Pages and tabs prevent the result from becoming one endless panel, while groups let related widgets share the same space.

Setup is short, configuration is the real work

The recommended installation is credible. Download the Compose template, edit its files, and run docker compose up -d. There are also prebuilt binaries for Linux, Windows, and macOS across common x86 and ARM architectures. A manual binary looks for glance.yml beside itself unless given another path. The supplied example gives new users a working structure instead of an empty screen.

Expect to spend most of the first evening in YAML. Pages contain columns, columns contain widgets, and almost every widget has its own options. The documentation is excellent at explaining this structure and includes a long sample worth copying. Configuration files reload automatically on save, so iteration does not require restarting the service. Included files make a large setup manageable, and config:print helps inspect the fully resolved result when an include produces confusing YAML line numbers.

There are operational details behind the pleasant demo. Reloading configuration clears cached data, which can trigger upstream rate limits if done repeatedly. Environment-variable changes require a restart. The README also warns that pages with many widgets can exceed the low DNS request limits commonly configured by Pi-hole or AdGuard Home. Tokens and passwords can be injected through environment variables, Docker secrets, or files, but someone still has to provision and rotate them.

Exposing Glance outside the home network deserves care. Built-in username and password authentication requires a generated secret key, and passwords can be hashed rather than stored as plain text. Behind a reverse proxy, the proxied setting and forwarded headers must be correct so login rate limiting sees the real client address. Glance is approachable, but public deployment is not simply publishing port 8080.

Built-in widgets cover a lot, with clear escape hatches

The standard widget catalog is the strongest reason to choose Glance. It covers news and social feeds, media channels, finance, calendars, bookmarks, repository releases, monitoring, Docker containers, and machine metrics. Cache settings keep slow or rate-limited sources from being called on every view. Preconfigured pages and a separate community-widget repository shorten the path to useful layouts.

When the catalog stops short, Glance offers four escape hatches. An iframe can embed another site, static HTML can present a small hand-built panel, an extension can fetch rendered widget content, and a custom API widget can fetch JSON and render it with a Go template. The last option turns many ordinary HTTP APIs into dashboard panels without modifying Glance itself. It is not a no-code tool: the docs explicitly assume basic programming, HTML, CSS, templates, and project-specific concepts. Extensions that permit HTML also require trust in the provider, a risk the documentation calls out directly.

Glance is not a live monitoring console. Most values are fetched when a page loads and then cached; the FAQ says a refresh is required to update the page, apart from elements such as clocks and relative timestamps. If you need instant alerts, streaming graphs, or incident workflows, keep Grafana or another monitoring product in the stack and use Glance as the calm front door.

The limitations are concrete

Several rough edges affect otherwise sensible uses. Read tracking is browser-local, according to the open request for synchronized mark-as-read behavior. Moving from a desktop to a phone therefore loses that context. Translation support is also still requested, making the English interface a poor choice for some shared households. Built-in authentication uses an interactive form, while an August 2026 request asks for HTTP Basic authentication so non-interactive display software can log in.

Third-party feeds can break independently of Glance. Reddit blocked unauthenticated JSON access from many server addresses. Version 0.8.5 added a bypass, but its release notes warn that it may be temporary or inconsistent. The configuration guide documents app credentials, proxies, and VPN routing as alternatives. Treat social widgets as conveniences, not guaranteed data pipelines.

Healthy interest, but a large maintenance surface

Glance had about 36,000 GitHub stars and 345 open issues and pull requests when researched. The last push to the main repository and release v0.8.5 were both dated May 30, 2026. That alone might look quiet, but open issues and pull requests were still being created and updated in August 2026, covering refresh controls, RSS rendering, container health, and documentation. The evidence points to an active community around a maintainer-controlled release process, not an abandoned project.

The AGPL-3.0 license is friendly to personal self-hosting but deserves review before a company modifies the service and provides it over a network. For its natural audience, Glance is easy to recommend. It stays fast, looks unusually finished, and gives skilled users enough extension points without making every user assemble a web application. Just choose it for a curated start page, not for real-time monitoring or shared information state.

Alternatives

ProjectWhat it isPick it when
HomepageA service-focused start page with many Docker and application integrations.pick this instead when your main goal is launching and monitoring self-hosted services through ready-made integrations.
DashyA feature-rich personal dashboard with themes, status checks, and a UI editor.pick this instead when you want more editing help in the browser and do not mind a larger front-end application.
HomarrA drag-and-drop dashboard with built-in authentication and many integrations.pick this instead when multiple users, visual configuration, and built-in app integrations matter more than a small YAML-driven service.

What people are saying

  1. [github-trending] glanceapp/glance

Sources

  1. Glance repository and README
  2. Glance configuration documentation
  3. Glance v0.8.5 release
  4. Reddit widget 403 discussion
  5. Mark as read feature request
  6. Translation support request
  7. HTTP Basic authentication request