selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

Portkey logo

Self-host Portkey

v4.0.0

Link portal and startup page with search and custom pages

ReleaseOpen SourceAGPL-3.0
Updated11 hours ago
LanguageGo
Setup difficultyEasy
MobileResponsive
ThemeDark mode
Stars
183
Ports
3000 (main web UI), 3030 (Prometheus metrics endpoint)
Docker
codehat/portkey
Install with Docker
Link collection without groupsLink collection with groupsSearch for a linkCustom page example

What is Portkey?

Portkey is a lightweight Go web application that acts as a personal or team startup page, displaying a searchable collection of links organized into optional groups with a responsive multi-column grid. It retrieves and stores favicons for external links, supports custom icons via emoji, image files, or URLs, and allows creating small custom HTML pages. The entire configuration lives in one config.yml file, with environment variable overrides using the PORTKEY_ prefix. It runs as a single binary, in Docker (codehat/portkey), or via docker run, exposing the main UI on port 3000 and optional Prometheus metrics on port 3030. The interface includes both dark and light themes and falls back to a vertical layout on mobile screens. No external database or cache is required.

Should you self-host Portkey?

Portkey scores 49/100 on selfhost.directory (how scoring works) and ranks #18 of 44 in Dashboard. It has 183 GitHub stars.

It shipped 4 stable releases in the past year. The latest, v4.0.0, came out on 9 August 2026. New versions land roughly every 3 months.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is AGPL-3.0-licensed and written mostly in Go.

Its closest alternative on selfhost.directory is Homepage by gethomepage (84/100, 33 419 stars). It scores higher overall, so compare the two before you pick. See Portkey vs Homepage by gethomepage side by side.

Features

  • Custom Pages
  • Custom portal icons
  • Dark and light mode
  • Favicon fetching and caching
  • Grouped sections
  • Link Collection
  • Multi-column grid layout
  • Prometheus Metrics
  • Search with fuzzy matching
  • Single-file configuration

Portkey README

How to install Portkey

Install Portkey with Docker

docker run --rm -it
-v $(PWD)/config.yml:/opt/config.yml
-v $(PWD)/favicon-cache:/opt/favicon-cache
-v $(PWD)/icons:/opt/icons
-e PORTKEY_FAVICON_CACHEENABLED=true
-e PORTKEY_FAVICON_CACHE_DIR=/opt/favicon-cache
-e PORTKEY_FAVICON_CUSTOMICONSDIR=/opt/icons
-p 3000:3000
codehat/portkey:latest

Container runs with working directory /opt; config paths must match container-side mount destinations

Portkey releases & version history

More in Home Server

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…