Case Study
A unified, open-source foundation powering all studio products
Context
Throughout my career, I’ve gravitated toward platform work — the kind of engineering that sits beneath every product and keeps teams fast, aligned, and productive. At Project44 I built automated test frameworks; at Dais I modernized apps from Vue 2 to Vue 3 and initiated its design system. Across all of these environments, I kept running into the same patterns:
repeated boilerplate
misaligned architecture
duplicated CI/CD pipelines
inconsistent TypeScript configurations
fragmented design tokens and UI logic
manual, error-prone release processes
When I founded Kurocado Studio, I didn’t want to recreate those problems.
The studio’s roadmap isn’t one product — it’s an ecosystem:
FormKit — a form UI system + toolkit
Design System — a shared visual and functional language
Daily UI Challenge App — 100 small React/Vue implementations
Future SaaS templates and client projects
Internal tools, libraries, and open-source utilities
Every piece needs to be consistent, maintainable, and high-quality.
Building each of these independently would guarantee fragmentation and technical drift. So I made the decision early: the studio needed one platform to power all of it.
Why the Platform Is Open Source
The decision to open-source the platform came directly from the studio’s business plan and my personal philosophy. As it evolves, the platform will continue maturing into a full SaaS product supported through Open Collective sponsorship — ensuring it remains open-source while also financially sustainable.
Business Rationale
Open source reflects the values driving Kurocado Studio:
Transparency — clients can inspect our engineering standards
Credibility — real code is more trust-building than marketing
Community — creators learn best when the work is visible
Differentiation — most studios hide their methodology; we share ours
Open-sourcing aligns with the “build in public” culture I admire. It positions the studio not just as a service provider, but as a platform-driven engineering organization.
Engineering Rationale
Open source enforces:
better documentation
clearer architecture
reusable tooling
consistency across repos
community feedback loops
It also serves the studio’s educational goals — letting developers learn directly from real, production-grade scaffolding.
Problem
Kurocado Studio’s product ecosystem — FormKit, 100 Daily UI challenges, a design system, and future apps — shared core requirements.
Repeated Engineering Work
Every project required its own:
TS configs
ESLint rules
Build setup
Testing utilities
CI/CD YAML
Documentation patterns
Release processes
This creates the same scaling problems I’ve seen inside enterprise platform teams.
Inconsistent Standards Across Projects
Without a shared foundation:
UI patterns diverge
Design tokens drift
Code quality varies
Versioning becomes chaotic
Onboarding slows down
High Maintenance Cost for a Small Team
As a solo engineer (for now), maintaining multiple standalone repos would eventually collapse under its own weight. I needed to solve the problem systemically, not project-by-project.
Goal
Engineering Goals
Create a TypeScript-first platform for all studio products
Make new repo setup take minutes, not hours
Guarantee that every app uses the same standards
Automate everything: linting, tests, docs, releases
Support both monorepo and standalone structures
Ensure React, Vue, and design system components share the same foundation
Business Goals
Reduce engineering overhead for future client projects
Create a scalable base for the studio’s educational tools
Strengthen brand differentiation through open-source quality
Build systems that allow one engineer to maintain a full product ecosystem
My Role
I owned:
platform architecture
all TypeScript packages
CI/CD reusable workflows
semantic release automation
documentation tooling
design tokens foundation
developer experience and onboarding flow
all technical writing and documentation
This project represents the intersection of product design, front-end engineering, and platform architecture — the work I naturally gravitate toward.
Research & Inputs
This platform is built on years of pattern recognition from:
enterprise product platforms (p44 IAM, Dais insurance products)
design-system environments (SpotOn, Dais)
multi-repo toolchains
GitHub Actions workflow engineering
modern monorepo best practices (PNPM + Turborepo)
OSS tooling standards from Vercel, Shopify, Radix, and Astro
I distilled the best practices I’ve learned into something I could maintain as a single engineer.
Constraints
The platform had to:
Work across React, Vue, and node-based libraries
Power everything from UI challenges to enterprise SaaS templates
Be easy to maintain long-term with minimal resources
Work fully on GitHub Actions
Provide consistent DX across all repos
Remain open-source and well-documented
Scale to dozens of apps without becoming complex
These constraints pushed the design toward convention-over-configuration.
Approach
Platform-First Thinking
Instead of configuring tooling per repo, I solved it once:
one set of tsconfigs
one ESLint preset
one design token system
one release pipeline
one workflow for docs
one pattern for routing, folders, and build steps
Everything inherits from the platform.
Architecture Strategy
PNPM workspaces
Turborepo build pipelines
Internal and public package boundaries
Reusable GitHub Actions workflows
Automated semantic releases
Docs-as-code deployed via GitHub Pages
This approach ensures all studio projects evolve together, not apart.
Solution
Monorepo Architecture
Core packages include:
@kurocado/tsconfig — shared TS config
@kurocado/eslint-config — linting standards
@kurocado/utils — shared logic
@kurocado/design-tokens — future design system foundation
@kurocado/workflows — reusable GitHub Actions
Every project — FormKit, the Daily UI Challenge App, the design system — inherits these automatically.
Reusable CI/CD Workflows
Any repo can import the studio workflows:
This gives every project:
linting
testing
documentation
semantic versioning
changelog automation
npm publishing
tag pushes
works for both monorepos and standalone repos via the
monorepoinput
No duplication. No drift.
See CI/CD Workflows for diagrams of how these pieces connect.
Automated Release System
The release workflow:
reads commits
determines semantic version bump
generates release notes
updates the changelog
publishes to npm
pushes tags
works for both monorepo and standalone packages
This eliminates the manual release chaos many teams face.
Documentation Pipeline
Every repo automatically:
builds docs
deploys to GitHub Pages
inherits a consistent documentation structure
stays synchronized with the platform
Documentation is part of the product — especially because everything is OSS.
Developer Experience Improvements
opinionated defaults
instant repo setup
consistent folder structure
debug-friendly logs in CI/CD
shared tokens and UI foundations
unified testing strategy
long-term maintainability
The platform enables me to build faster — without sacrificing quality.
Challenges & How I Solved Them
Reusable Workflows
GitHub Actions are powerful but restrictive. I built clean input interfaces and centralized secrets to keep repos isolated but consistent.
Supporting Both React and Vue
Shared tooling abstracts framework differences so all projects behave the same under the hood.
Monorepo Release Complexity
I implemented logic to detect package changes and apply versioning intelligently.
Avoiding Platform Bloat
I kept the platform focused: strong defaults, minimal configuration, no unnecessary abstractions.
Impact
Engineering Impact
All Kurocado Studio projects now share the same engineering standards
New project setup takes minutes
Releases are fully automated
Zero configuration drift across repos
One engineer can maintain a multi-product ecosystem
Business Impact
Faster delivery for client work
Stronger studio identity built on transparent engineering
A reusable foundation for educational content and tutorials
Enterprise-quality consistency without enterprise headcount
What I’d Do Next
Add CLI scaffolding (“create-kurocado-app”)
Expand design tokens into a full design system
Add test utilities for UI challenges
Add preview deployments for PRs
Release multiple starter template repos
Harden alpha/beta release reporting and rollout visibility
Reflection
What I Learned About Platform Design
A strong platform turns one engineer into a team. Building this foundation taught me how much leverage comes from solving problems once and inheriting the solution everywhere.
How This Reflects My Career Direction
I realized I genuinely love architecting systems like this — the kind of high-leverage, cross-cutting work that powers entire product suites. This project represents where I’m most effective and where I want to keep growing: platform engineering, frontend architecture, and systems that scale.