Skip to content
OpenSourceSoftware.ai

GitHub stars

33,438
—Awaiting first sync

Awaiting first sync

No measured star history yet

What is Homepage?

Homepage gives you a single browser start page for the services you run yourself. It shows each app with a link, its status and live figures pulled from its API. Setup is done in a few YAML files or with Docker labels, so the page is easy to keep up to date.

Homepage is a self-hosted application dashboard and start page, set up with YAML files or Docker labels. It shows links, bookmarks and live data from over 100 service integrations, plus weather, search, system resources and Docker container stats. Requests to services are proxied through its server, so API keys stay hidden from the browser.

Core capabilities

  • Service widgets show live data from apps such as Plex, Jellyfin and Sonarr.
  • Finds services automatically from Docker labels and shows container stats.
  • Proxies API requests to your services so keys stay off the browser.

Services, bookmarks and widgets

Services are listed in groups, each with a link, icon, description and optional service widget. Service widgets exist for well over 100 apps, including media servers, download clients, DNS filters and home automation platforms. Information widgets in the header show search, weather, date and time, system resources, Glances and Kubernetes data. Bookmarks add plain web links.

  • Dashboard
  • Widgets
  • Bookmarks
  • Integrations

Docker discovery and status checks

Homepage can read container status from local or remote Docker hosts, including Docker Swarm. Containers with homepage labels are added to the page automatically. siteMonitor checks a URL and shows its response time, and ping checks a host over ICMP. Because requests to services go through Homepage's server, API keys are not exposed to the browser.

  • Docker
  • Status
  • Monitoring
  • Security

Run it yourself under GPL-3.0

Run the ghcr.io/gethomepage/homepage image on port 3000 with a config folder mounted, or install it on Kubernetes with Helm, on Unraid, or from source. Set HOMEPAGE_ALLOWED_HOSTS to the address you use to reach it. The docs say a public install must sit behind a reverse proxy or VPN that enforces authentication and TLS, and an optional password or OIDC login is available. Homepage is licensed under GPL-3.0 and translated into more than 40 languages.

  • Self-hosted
  • Docker
  • Kubernetes
  • YAML
  • GPL-3.0

Where it fits

Use cases

  1. 01

    Build one start page for your home lab

    Define groups and services in services.yaml, giving each an href, icon and description. Add links in bookmarks.yaml, and header widgets such as search, weather, date and time or system resources in widgets.yaml. Layout and theme options go in settings.yaml.

  2. 02

    Add services automatically from Docker

    Connect Homepage to Docker in docker.yaml, either through the Docker socket or through a socket proxy with read-only access. Add labels such as homepage.group, homepage.name, homepage.href and homepage.widget.type to your containers. Homepage then lists those containers and can show their CPU, memory and network stats.

  3. 03

    See whether services are up

    Add siteMonitor to a service to check a URL and show its response time, or ping to check a host over ICMP. Service widgets pull live figures from each app's API. Highlight rules can colour values that cross a threshold you set.