Our own hosting platform with a client portal
Managing name servers, mail, websites and databases from one place — for the operator and for the customer.

We run hosting on our own servers and for a long time managed them with a tool that was no longer enough: part of the changes was done by hand and the records drifted away from reality. So we built our own platform that drives the servers itself.
What it consists of
- a central API with records of customers, domains and hosting plans,
- agents on the individual servers — name servers, mail, web and databases,
- a console for the operator and a client portal for customers in four languages,
- a link to the invoicing system for service renewals.
What mattered
Every change travels over a signed channel and an agent performs it at most once, even when a request is repeated. A record is written only after the server confirms it — so the records never claim something that is not on the server.
Along the way we moved the infrastructure to new machines without customers having to change anything: name server and website addresses stayed the same.
Technologies
PHP, Nette, Doctrine, MariaDB, Nuxt, BIND, Postfix, Dovecot, Apache, PHP-FPM.