Portfolio design system
The 30-Second Version
A quick note before you keep scrolling
As the portfolio grew, inconsistencies started creeping into new components, sections, and pages. So I built a design system for it: a four layer architecture running from tokens to primitives to composite components to pages, with clear rules for when something earns full component status instead of staying a one-off. It's a living system, with a changelog tracking every update as the portfolio keeps evolving.
I Owned
- Design tokens & typography scale
- Component architecture (primitive to page)
- Color, spacing & motion systems
- Changelog & ongoing documentation
Solo project
- Designed, built, and maintained end to end
While working on my portfolio, I noticed something I’ve experienced many times when working on projects that need to scale. As I kept building new components, sections, and pages, I started to notice inconsistencies creeping in. That’s when I realized I needed to create a design system for my own portfolio.
And this is it.
This is a living design system, so it’s continuously evolving as I make updates to the portfolio. At the bottom of the page, you’ll find a change log documenting the updates I make over time.
You can explore the full design system here and see how I approach building a system from scratch, while keeping it scalable and consistent as the product grows.
How this system is layered
The architecture follows a 4-layer hierarchy mapped directly to the codebase structure. Each layer builds upon the layer directly before it:
How I decide what gets added
As a solo designer and developer, I maintain a streamlined workflow. Elements qualify for full component status based on clear reuse criteria, keeping the library lean, functional, and highly effective.
Portfolio design system
Brand & Semantics
focusOffset: 2px