explaingit

bastienwirtz/homer

11,342VueAudience · ops devopsComplexity · 2/5LicenseSetup · easy

TLDR

Homer is a simple home server dashboard that shows all your self-hosted services in one page, driven by a single YAML config file, no database, no backend, just a static page served by Docker or any web server.

Mindmap

mindmap
  root((homer))
    What it does
      Home server dashboard
      Service link organizer
      Fuzzy search
    Config
      YAML file
      Theme options
      Smart cards
    Deployment
      Docker container
      Static web server
      Kubernetes
    Audience
      Self-hosters
      Home lab users
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Set up a single dashboard page for all your self-hosted services like media servers, password managers, and file sync tools

USE CASE 2

Organize home server bookmarks into sections with icons and fuzzy search across all listed services

USE CASE 3

Deploy a lightweight home lab dashboard with a single Docker container and a YAML config file

USE CASE 4

Add smart status cards that pull live metadata or health status from supported services

Tech stack

VueJavaScriptYAMLDocker

Getting it running

Difficulty · easy Time to first run · 5min
Use freely for any purpose including commercial, as long as you keep the copyright notice and state any changes made.

In plain English

Homer is a Vue-based project that creates a simple dashboard page for a home server or self-hosted setup. Instead of bookmarking every service you run, like a media server, password manager, or file sync tool, you point a browser at Homer and see all your links in one organized place. The whole dashboard is driven by a single YAML configuration file. You list your services, group them into sections, add icons, and configure links. Homer reads that file and generates the page. No database is required and no backend logic runs at request time. It is a static HTML and JavaScript site that just needs a basic web server to deliver the files. Deployment is straightforward. The most common approach is Docker: you run a single container and mount a local directory that holds your config file. The README also covers running it without Docker by downloading a prebuilt ZIP and serving it with any static web server, including Python's built-in one for quick testing. A separate documentation page covers Kubernetes installation for those who need it. Features include fuzzy search across all your listed services, keyboard shortcuts for navigating and opening results, multi-page support for larger setups, theme customization, and what the project calls smart cards. Smart cards can pull live status or extra metadata from certain supported services. Full details for each feature are in separate documentation pages linked from the README. Homer is licensed under Apache 2.0 and appears in the Awesome Self-Hosted curated list. The project emphasizes staying lightweight and requiring minimal ongoing maintenance once your configuration file is set up.

Copy-paste prompts

Prompt 1
I'm setting up a Homer home server dashboard. Help me write a config.yml that groups my services into Media, Files, Security, and Monitoring sections, with at least 3 services per group including icons and URLs.
Prompt 2
I want to add a smart card to my Homer dashboard for a Proxmox server. What YAML config format should I use and what does Homer display from it?
Prompt 3
Show me how to enable fuzzy search and keyboard shortcuts in Homer's config.yml so I can quickly jump to any service from the dashboard.
Prompt 4
I want to deploy Homer using Docker on my home server. Give me the Docker run command and the minimum folder structure for the config directory.
Open on GitHub → Explain another repo

← bastienwirtz on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.