A feature-complete Web UI for Headscale
Go to file
2025-04-02 10:16:34 -04:00
.github feat: rework github actions 2025-03-24 16:49:54 -04:00
.zed feat: rework github actions 2025-03-24 16:49:54 -04:00
agent feat: switch agent fetching to the server side 2025-03-24 16:15:38 -04:00
app fix: remove unreleased feature and ignore invalid keys in config 2025-04-02 10:16:34 -04:00
assets docs: redo docs 2025-02-27 15:31:16 -05:00
docs docs: use git tags for bare metal 2025-03-29 14:10:46 -04:00
nix fix: update nix hash 2025-03-24 16:15:38 -04:00
patches fix: allow hostname passthrough for hono node 2025-03-24 16:15:38 -04:00
public chore: initial commit from create-remix 2024-03-25 17:50:10 -04:00
test chore: remove old username in dns option 2025-01-18 13:22:43 +00:00
.dockerignore feat: add docker build 2024-03-26 10:10:34 -04:00
.env.example docs: solidify DOCKER_SOCK and ROOT_API_KEY usage 2024-05-22 12:43:42 -04:00
.envrc feat: add a nix flake (#132) 2025-03-18 00:31:37 -04:00
.gitignore chore: switch to react-router v7 2025-01-06 08:19:40 +05:30
.npmrc fix: allow hostname passthrough for hono node 2025-03-24 16:15:38 -04:00
agent.Dockerfile feat: containerize agent 2025-01-15 10:17:30 +05:30
biome.json style: temporarily disable some naggy lints 2025-01-28 16:07:15 -05:00
CHANGELOG.md chore: v0.5.5 2025-03-18 00:46:54 -04:00
compose.yaml chore: switch to 0.25.0 in dev 2025-02-19 10:37:10 -05:00
config.example.yaml fix: remove unreleased feature and ignore invalid keys in config 2025-04-02 10:16:34 -04:00
Dockerfile feat: bundle node_modules into the server 2025-03-24 16:15:38 -04:00
flake.lock feat: add a nix flake (#132) 2025-03-18 00:31:37 -04:00
flake.nix feat: add a nix flake (#132) 2025-03-18 00:31:37 -04:00
go.mod feat: create initial agent for localapi 2024-12-30 13:48:49 +05:30
go.sum feat: create initial agent for localapi 2024-12-30 13:48:49 +05:30
lefthook.yml chore: add lefthook for lint staged 2025-01-20 08:26:00 +00:00
LICENSE chore: add license and readme again 2024-03-26 10:24:28 -04:00
package.json fix: allow hostname passthrough for hono node 2025-03-24 16:15:38 -04:00
pnpm-lock.yaml fix: allow hostname passthrough for hono node 2025-03-24 16:15:38 -04:00
react-router.config.ts feat: bundle node_modules into the server 2025-03-24 16:15:38 -04:00
README.md chore: add 'community' things 2025-03-18 01:32:05 -04:00
tailwind.config.ts chore: switch tailwind fonts 2025-01-20 08:15:14 +00:00
tsconfig.json chore: switch to vite for server dev 2025-01-17 08:33:22 +00:00
vite.config.ts fix: do not bundle ssr deps in dev 2025-03-24 16:26:47 -04:00

Headplane

A feature-complete web UI for Headscale

Preview

Headscale is the de-facto self-hosted version of Tailscale, a popular Wireguard based VPN service. By default, it does not ship with a web UI, which is where Headplane comes in. Headplane is a feature-complete web UI for Headscale, allowing you to manage your nodes, networks, and ACLs with ease.

Headplane aims to replicate the functionality offered by the official Tailscale product and dashboard, being one of the most feature complete Headscale UIs available. These are some of the features that Headplane offers:

  • Machine management, including expiry, network routing, name, and owner management
  • Access Control List (ACL) and tagging configuration for ACL enforcement
  • Support for OpenID Connect (OIDC) as a login provider
  • The ability to edit DNS settings and automatically provision Headscale
  • Configurability for Headscale's settings

Deployment

Headplane runs as a server-based web-application, meaning you'll need a server to run it. It's available as a Docker image (recommended) or through a manual installation. There are 2 ways to deploy Headplane:

  • Integrated Mode (Recommended)

    Integrated mode unlocks all the features of Headplane and is the most feature-complete deployment method. It communicates with Headscale directly.

  • Simple Mode

    Simple mode does not include the automatic management of DNS and Headplane settings, requiring manual editing and reloading when making changes.

Contributing

Headplane is an open-source project and contributions are welcome! If you have any suggestions, bug reports, or feature requests, please open an issue. Also refer to the contributor guidelines for more info.

ACLs Machine Management

Copyright (c) 2025 Aarnav Tale