Skip to content
2 min read

Building Cytric: a hosting platform from the ground up

  • #infrastructure
  • #security
  • #fullstack

I started Cytric (previously Cybrance) because I wanted to know what it actually takes to ship a real platform — not a demo, not a tutorial clone, but something people can sign up for, pay for, and depend on. The answer, it turns out, is everything at once.

One person, every layer

When you build a platform alone you stop being a "frontend developer" or a "backend developer." You become the person responsible for the branding, the marketing site, the billing flow, the server that runs the bots, the firewall in front of it, and the 2 a.m. status page when something breaks.

That sounds exhausting, and sometimes it is. But it's also the fastest way I've ever learned. Every part of the stack stops being abstract:

  • Frontend — a responsive, branded site built with Vite, TypeScript and Tailwind CSS.
  • Billing — Paymenter wired up to handle subscriptions and invoices.
  • Hosting — Pterodactyl on Ubuntu, with the networking and security to keep it isolated.
  • Edge — Cloudflare in front of everything for caching, TLS and protection.

Security isn't a feature you add later

The thing I care about most — and the reason I lean toward cybersecurity in my studies — is that security can't be bolted on at the end. It's a property of how you set things up from the very first commit.

// Lock down what the platform can do, by default.
const policy = {
  allowOutbound: false,
  isolatedContainers: true,
  rotateSecrets: "30d",
} as const;

Defaults matter. A platform that's secure by default protects users who never read a single setting — and that's most of them.

What's next

Cytric is still evolving. Every iteration teaches me something new about doing infrastructure properly, and that knowledge flows straight back into the client work I do. If you want to see where it's at, visit cytric.nl.