Acknowledgments

Acknowledgments and credits for PatchPanel.

Table of contents

  1. TOC

Acknowledgments

PatchPanel is built on top of HAProxy plus a long list of excellent open-source projects. We are grateful to the developers and communities behind them.

The thing PatchPanel manages

HAProxy - High-performance TCP/HTTP load balancer and reverse proxy

  • Website: haproxy.org
  • License: GPL-2.0
  • Usage: The reverse proxy PatchPanel renders configuration for, validates, and reloads via the master CLI socket. PatchPanel is, fundamentally, a state-driven UI on top of HAProxy.

certbot - ACME client for Let’s Encrypt and other certificate authorities

  • Website: certbot.eff.org
  • License: Apache 2.0
  • Usage: Issues and renews TLS certificates via DNS-01 / HTTP-01 challenges. PatchPanel wraps it with a state-driven configuration and renewal scheduler.

Backend dependencies

Express.js - Fast, unopinionated, minimalist web framework for Node.js

  • Website: expressjs.com
  • License: MIT
  • Usage: Serves the management API and the SPA shell.

zod - TypeScript-first schema validation with static type inference

  • Repository: github.com/colinhacks/zod
  • License: MIT
  • Usage: Validates every state document on save and surfaces precise field-level errors back to the UI.

better-sqlite3 - Fast, simple, synchronous SQLite3 bindings for Node.js

croner - Cron job scheduler for Node.js

@maxmind/geoip2-node - MaxMind GeoIP2 database reader

  • Repository: github.com/maxmind/GeoIP2-node
  • License: Apache 2.0
  • Usage: Resolves client IPs to country/city/ASN for the dashboard origin panels. Optional — PatchPanel runs without it.

ws - Simple to use WebSocket client and server library

multer - Node.js middleware for handling multipart/form-data

Frontend dependencies

React - Library for building user interfaces

  • Website: react.dev
  • License: MIT
  • Usage: The entire management UI.

Vite - Frontend tooling

  • Website: vitejs.dev
  • License: MIT
  • Usage: Dev server and production bundler.

react-bootstrap + Bootstrap + Bootstrap Icons

Highcharts (commercial license required for production / non-personal use)

  • Website: highcharts.com
  • License: Highcharts Non-Commercial / Commercial
  • Usage: Stats charts and the GeoIP origin map.

@xyflow/react + dagre - Node-and-edge graph library + layout engine

diff - Unified diff library for JavaScript

Platform

Node.js - JavaScript runtime built on V8

  • Website: nodejs.org
  • License: MIT-style
  • Usage: Core runtime.

Debian - The universal operating system

  • Website: debian.org
  • License: DFSG-compatible
  • Usage: Target platform for the standalone .deb distribution.

Home Assistant - Open-source home automation platform

  • Website: home-assistant.io
  • License: Apache 2.0
  • Usage: Host platform for the HAProxy add-on incarnation of PatchPanel.

Tools and ecosystem

GitHub - Code hosting, issue tracking, CI/CD

npm - Package manager for Node.js

Jekyll + Just the Docs

release-please - Conventional-commit-driven release automation

CodeQL - Semantic code analysis engine

Standards

OpenAPI Specification - API description format

Semantic Versioning - Versioning scheme for software

  • Website: semver.org
  • Usage: Project versioning strategy.

Conventional Commits - Commit message convention

ACME (RFC 8555) - Automatic Certificate Management Environment

  • Specification: RFC 8555
  • Usage: Protocol PatchPanel uses (via certbot) for cert issuance/renewal.

Documentation and learning resources

MDN Web Docs - Web development documentation

HAProxy Configuration Manual - Definitive HAProxy reference

Node.js Documentation - Official Node.js documentation

Special recognition

Open Source Community - The broader open-source software community whose collaborative spirit makes projects like PatchPanel possible.

STARTcloud - For sponsoring and hosting the PatchPanel apt repository, the documentation site, and the CI infrastructure.

Home Assistant Community - For the add-on platform that gave PatchPanel its first home.

Early Users and Testers - Community members who provided feedback during development and testing phases.


Disclaimer

This acknowledgment file may not be exhaustive. If you believe a project or individual should be acknowledged here, please open an issue or contribute to this file.

All trademarks and registered trademarks mentioned herein are the property of their respective owners.

Contributing to acknowledgments

If you notice missing acknowledgments or have suggestions:

  1. Open an issue with the documentation label
  2. Submit a pull request with your proposed changes
  3. Ensure you have permission to acknowledge any individuals mentioned