v1.0.0 — Open Source · GPL-3.0

Your server.
Your control.

ControlPulse is an open-source, self-hosted server panel built in Go. Manage Nginx, MySQL, SSL, firewall, files, and a live terminal — all from a browser. No subscriptions. No vendor lock-in.

Quick Install View on GitHub
bash
# Install ControlPulse
$ curl -sSL https://controlpulse.in/install.sh | sudo bash

→ Installing dependencies...
→ Downloading binary...
→ Setting up systemd service...

✓ ControlPulse installed!
Panel: http://your-server-ip:8888
Password: Xk9#mP2!vQr...

Features

Everything you need to run a server

All the tools. None of the bloat. Built for developers who want full control.

Nginx Site Management

Create, enable, disable, and delete virtual hosts. One-click domain setup with auto-generated configs.

SSL Certificates

Provision free Let's Encrypt certificates via Certbot with a single click. HTTPS in seconds.

MySQL Databases

Create databases and users with auto-generated secure passwords. Launch phpMyAdmin from the panel.

App Blueprints

One-click WordPress and Laravel deployment. Automatically creates the domain, database, and files.

File Manager

Browse, edit, upload, and delete files with a built-in Monaco code editor. No FTP client needed.

Firewall & Fail2Ban

Manage UFW rules and Fail2Ban jails. View banned IPs and unban them with one click.

Live Terminal

Full PTY terminal in the browser over WebSocket. Run any command without SSH clients.

Cron Jobs

Add and remove scheduled tasks through a clean UI. No manual crontab editing required.

System Dashboard

Real-time CPU, RAM, disk usage, and service status. System updates and log viewer built in.


Get Started

One command to install

Requires Ubuntu 22.04+ or Debian 11+. Installs all dependencies automatically.

Install

$ curl -sSL https://controlpulse.in/install.sh | sudo bash

Uninstall

$ curl -sSL https://controlpulse.in/uninstall.sh | sudo bash

What the installer does

  • Installs Nginx, MySQL, PHP 8.3-FPM, UFW, Fail2Ban, and Certbot
  • Downloads the ControlPulse binary to /opt/controlp/
  • Creates a systemd service that starts automatically on boot
  • Generates a secure random password, stored in /etc/controlp/controlp.env
  • Opens port 8888 in UFW
  • Prints your panel URL and credentials

Prefer to build from source?

# Requires Go 1.21+
$ git clone https://github.com/mehranshahmiri/controlpulse.git
$ cd controlpulse && go build -o controlp main.go
$ ./controlp

Tech Stack

Built with solid fundamentals

🐹

Go

Backend runtime

Fiber v2

HTTP framework

🔌

WebSocket

Live terminal

🎨

HTMX + Alpine

Frontend

Single binary. No Docker. No Node.js. No build step.

Ready to take control?

Free. Open source. One command away.