Today, we're launching Xylo Sites—a multi-tenant platform where anyone can spin up their own blog, brochure site, or shop at a custom subdomain or domain, without touching code.
But more importantly, we're committing to building this platform in public. This blog is where we'll share the journey: the technical decisions, the wins, the pivots, and the lessons learned.
Why Xylo Sites?
The web is full of site builders, but most force you to choose between simplicity and control. We wanted something different: a platform that's simple enough for non-technical users but powerful enough that you won't outgrow it.
Xylo Sites gives you:
• Your own space - Custom subdomain (yourblog.xylo.gg) or bring your own domain
• Clean, fast dashboard - Manage posts, pages, media, and settings without the bloat
• Beautiful templates - Blog, brochure, and shop layouts (more coming soon)
• Team collaboration - Invite authors, manage permissions, switch between sites
• Full theming control - Colors, fonts, logos—make it yours
• Built-in image editor - Crop, rotate, adjust—no need to leave the platform
• Smart content library - Org admins see content across all sites; authors see only their assigned sites
The Tech Stack
We're building on solid, modern infrastructure:
Frontend: Astro (SSR) + React + Tailwind CSS
Backend: Directus (headless CMS) + PostgreSQL
Hosting: DigitalOcean Droplets with Caddy for SSL
Storage: DigitalOcean Spaces with CDN
Billing: Stripe subscriptions
Email: Nodemailer via Mailgun
For the curious: we chose Astro for its speed and flexibility, Directus for its powerful API and built-in permissions, and Caddy because automatic HTTPS for wildcard domains is magical.
Where We Are Now
We've already shipped a lot:
✅ Full dashboard for posts, pages, categories, tags, and media
✅ Role-based access (Admin, Org Admin, Site Author)
✅ OAuth login (Google, GitHub) + email verification
✅ Stripe billing with trials and promo codes (LAUNCH code: $5/month for 6 months)
✅ Multi-site support for organizations
✅ Team invitations and management
✅ Site publish/unpublish controls
✅ Auto-unpublish when trials expire or billing lapses
✅ Landing page, hero carousels, author profiles, social links
✅ GitHub Actions CI/CD pipeline
In progress:
🔨 Custom domain support with on-demand TLS
Planned:
🔜 Brochure and shop templates (they exist in the schema but need UI love)
🔜 SSO with Keycloak for deeper community integration
Building in Public
This blog will be our lab notebook. Expect posts about:
• Architecture deep-dives - How we built multi-tenancy, permissions, and custom domains
• Product decisions - Why we chose certain features, what we cut, what we're adding next
• Business metrics - Growth, churn, what's working (and what's not)
• Lessons learned - Bugs, security issues, performance bottlenecks, and how we fixed them
• Community feedback - Your ideas shape the roadmap
We're not trying to hide the messy parts. Building software is hard, and we think there's value in showing the whole process—not just the polished launch posts.
Early Adopter Pricing
We're offering special pricing for our first users:
Regular pricing: $7/month or $57/year per site
LAUNCH promo code: $5/month for the first 6 months
Free trial: Unlimited build time, 30-day countdown starts when you publish
Early adopter tiers:
🎯 First 20 annual subscribers: Lifetime pricing guarantee + future AI features
🎯 First 100 users: Lifetime pricing guarantee
This is your chance to lock in the lowest price we'll ever offer—and help shape what Xylo Sites becomes.
Join the Journey
Whether you're a developer curious about our tech stack, a creator looking for a new home for your content, or just someone who enjoys watching things get built—welcome.
We'd love to hear from you. What features do you want? What's missing? What should we build next?
Drop us a line in our [Community chat](https://chat.xylo.gg) or reply below.
Here's to building in the open.
— The Xylo Team