A modern hosting panel
for the next decade.
NovaPanel exists because hosting hasn't gotten easier in fifteen years. cPanel still costs $18-49.50 per server. Plesk still feels like 2010. The free alternatives are either feature-poor or built on stacks nobody wants to debug at 3am.
The problem
Every few months a new VPS provider launches with $4/mo plans that have more compute than a 2015 dedicated server. At the same time, the hosting panel ecosystem has stayed expensive and clunky. cPanel charges per server. Plesk charges per server. DirectAdmin charges per server. The free options exist but they look like they were designed by accident.
Solo developers and small resellers end up with one of three bad options:
- Pay $18-49.50/mo per server for cPanel and tolerate its UI
- Run a free panel that's missing the features you actually need
- Roll your own with raw nginx + custom scripts and maintain it forever
We wanted a fourth option: a panel that's free for personal use, cheap when you grow, and built with the stack of the next decade rather than the last one.
Why a single Go binary?
Most panels are sprawling PHP/Perl/Python codebases that are painful to install,
painful to update, and painful to debug. The whole panel is one process,
one file on disk, one systemctl restart away from sane state.
Both web UIs (admin + customer) are embedded in the binary. Database migrations
are embedded. The license public key is embedded. There's nothing to copy alongside
the binary, no node_modules to keep in sync,
no PHP version to upgrade.
Updates are atomic: the panel downloads the new binary from our licence-gated CDN, checks its SHA-256 against the published manifest, and swaps in the replacement via a transient systemd unit. If the new version will not start, the panel puts the previous one back by itself rather than leaving you with a stopped service.
Open by default
The panel itself is closed-source — that's how we fund continued development. But the parts that matter for trust are public:
-
The installer is public on GitHub
— read every line before you run
curl | bash. - Licences are signed tokens your panel verifies offline against a public key built into the binary — so it keeps working normally if our licence server is unreachable, and you are never one outage away from a locked panel.
- Every release publishes the exact SHA-256 and size of its binary at /api/v1/version/latest, so you can check what you are running against what we published.
- Security issues get written up publicly on the security page, including the ones we found ourselves and the ones with awkward answers.
Where it's going
We ship continuously. Everything that lands shows up in the changelog the moment it is live, and the higher-level view — what is being worked on, what we are considering, and what we have decided not to build — is on the roadmap. Those two pages are kept current; this one deliberately does not repeat them, because a plan written in three places goes out of date in three places.
We prioritise based on what real users ask for. If there's something missing that would unblock you, drop into our Discord or email hello@novapanel.dev. Features asked for repeatedly tend to get pulled into the in-progress bucket; one-offs usually stay in "considering" until a second person asks for the same thing.