Technology layer
Tools, packages and
infrastructure for
building on the web.
Saastro is the technical foundation of my work — where patterns that keep repeating become reusable systems, and internal tools evolve into installable packages and products.
Not everything here is finished. Some things are alpha. Some are still being shaped. All of them are built to solve real problems I've encountered building websites and products.
Packages
Installable packages.
npm packages under the @saastro namespace. Drop them into any project.
@saastro/forms
alphaHeadless form engine for React. Bring your own components — pass a glob or an object. 34 field types, conditional logic, wizard flows, submit actions, transform nodes, plugin system. Config-driven.
@saastro/cms
alphaAstro integration for Git-based content management. GitHub-backed in production, local filesystem in dev. Supports MD and YAML, media with R2, revision history via Git commits.
@saastro/ui
wipComponent base shared across all Saastro projects. React + Tailwind + shadcn/ui pattern. Install individual blocks via npx shadcn add @saastro/name.
@saastro/core
alphaAuth primitives shared across the ecosystem. GitHub OAuth flow, AES-GCM token encryption via Web Crypto, session management with KV storage and cookie helpers.
@saastro/visual-editor
wipLive visual editing layer. Dual build: ESM for components and IIFE for iframe bridge injection. Integrates with Saastro Hub for visual content editing with live preview.
Products
Products built on these foundations.
Two products built on top of the packages. Each one started as an internal tool and grew into something larger.
Saastro Form Builder
betaBuilt on: @saastro/forms
Visual drag-and-drop form builder with a React Flow canvas. Build multi-step forms visually — drag fields into steps, connect steps with conditional edges, configure submit actions (webhook, API, email, redirect), map and transform field data between steps and actions. Undo/redo, responsive breakpoints, debug preview, plugin support.
Saastro Hub
wipBuilt on: @saastro/cms + @saastro/core + @saastro/visual-editor
Multi-tenant CMS SaaS on Cloudflare. Manage multiple sites per organisation — each backed by a GitHub repo. TipTap editor, live visual editor, content workflows with approval flows, realtime collaborative editing, AI writing tools (SSE streaming), white-label (colours, fonts, custom domains, custom CSS), plugin marketplace, billing via Stripe, SSO (SAML + OIDC), audit logs. Two modes: embedded Astro integration or full SaaS hub.
How my work is organised
Three connected layers.
My work lives across three spaces — each with a different purpose, all feeding into each other.
JCENLO
Personal layer
Where I write, share experiments and think out loud about building for the web.
ENLOLAB
Studio layer
Where client work lives. Websites, product interfaces and digital experiences.
SAASTRO
Technology layer — you are here
Tools, packages and infrastructure. What starts as internal tooling evolves into systems anyone can use.
Contact
Built in the open.
These tools are built to solve real problems. If you're working on something where any of this could be useful — or if you want to follow the work — get in touch.