layered-waves-haikei (1)-svg-svg

Hedgehog

A family of tools for managing infrastructure

Hedgehog is a family of open-source tools for server management, automation and infrastructure documentation. It grew out of wanting a tool that does exactly what I need, and out of an appetite for learning to build something larger than a one-off script. If it turns out to be useful to someone else and saves them writing their own, so much the better.

About the project


Hedgehog started as a single web panel for managing servers. Over time it grew into a modular family of software where each part can be used on its own or as a piece of a larger whole. The main reason I am building it is to learn how to design and maintain a real system over the long term – not just write it once and forget about it.

Development proceeds component by component. HedgehogPanel and HedgehogDaemon have been introduced publicly so far; other parts of the family are in progress and I will publish them once they mature into something usable.

Modular

Every part works on its own too

Open Source

The panel is available under the Apache 2.0 licence

Multiplatform

The goal is support for both Linux and Windows

Self-hosted

Everything runs on your own infrastructure

Parts of the family


Hedgehog is not one program but several separate tools that can work together. Below are the parts that have already been introduced publicly.

HedgehogPanel

A web panel for managing servers and services, written in C# on .NET and PostgreSQL. It offers user management, ownership assignment for servers and services, role-based access control and a clear browser interface. It talks to managed servers over gRPC. It is being built as a .NET alternative to existing solutions such as Pterodactyl or Portainer.

Status: in active development

HedgehogDaemon

A lightweight background process written in Rust that runs on every managed server. It handles the process lifecycle (starting, stopping, supervision), metric collection and log forwarding, and offers a plugin system built on WASM. It communicates with the panel over gRPC and can keep working even while the panel is unavailable.

Status: documented, implementation in preparation

Further components

The family keeps growing with further tools. Those are not public yet, and I will introduce them once they are in a usable state.

Status: in development, not yet published

Technical specifications


HedgehogPanel

Language: C#
Framework: .NET
Database: PostgreSQL
Frontend: HTML / CSS / JS
Licence: Apache 2.0

HedgehogDaemon

Language: Rust
Communication: gRPC
Plugins: WASM
Platforms: Linux, Windows
Footprint: minimal, a single binary

Code and development


Hedgehog is built in the open on GitHub – the code, the issues and the work-in-progress plans are all public. Feel free to look at how it is put together, use it yourself or contribute.

Current status: in active development

HedgehogPanel is available under the Apache 2.0 licence. Licences for the other components are stated in their own repositories.