The site you're reading right now. Workshop & Web is a maker studio in Greenville, Ohio, and this site is its storefront, portfolio, and customer portal all rolled into one — built end-to-end on our own stack so we can ship a feature the same day we think of it.
What it does
Service pages for 3D Printing, Laser Engraving, and Web Design — each with a live interactive estimator (3D), a browsable catalog (laser), and case studies (web).
Customer portal with magic-link sign-in, project intake, file uploads, quoting, deposit and balance payments via Stripe, message threads, and full status tracking from "In Review" through "Shipped."
Staff admin area at
/portal/adminfor managing every job, customer, payment, and message in one place.Showcase — the page you're on — driven entirely from the CMS.
How it's built
Astro 5 in SSR mode on Node, deployed to a Kubernetes cluster on blue-kube via GitLab CI and Rancher Fleet. The headless CMS is Roving Studio (our own), which doubles as the customer-portal database — every job, customer, message, and payment row lives there. Stripe handles money. Resend handles transactional email. Cloudflare Tunnel handles the ingress.
Stack
Astro 5 (SSR) on Node 22
Roving Studio (headless CMS + customer-portal data store)
Tailwind CSS v4
Space Grotesk + Inter typefaces
Stripe Checkout + Webhooks
Resend (transactional email)
GitLab CI + Kaniko (rootless container builds)
Harbor (private registry)
Rancher Fleet + Kubernetes (blue-kube cluster)
Cloudflare Tunnel (ingress)
Why this stack
We wanted a marketing site, a portfolio, and a real customer portal — without three different platforms gluing themselves together. Roving Studio gives us a single CMS that also stores live application data, so the same admin where we edit the homepage tagline is the admin where we update a customer's job stage. Astro lets us mix static marketing pages with SSR portal pages on one runtime. GitOps deployment means every change to the site or the schema is a commit in a single repo.