A custom and minimalist Figma design system built for quick assemblies and easy customization.
Overview
Building Blox was a personal project to gain a deeper understanding of best practices when constructing a system of styles and nested components in Figma.
Why build my own?
UI kits abound in the Figma community so why go through the trouble of building one from scratch? Simple: learn by doing.
Overview of Building Blox.
8px Grid System
Spacing and sizing measured in increments of 8.
Atomic Design
Nested components of atoms and molecules for bulk editing and consistency.
Auto Layout
Fully utilized Auto Layout 3.0 for responsive design.
Components and Variants
Components built with multiple variations for easy adjustments.
Styles
Text, color, grids, and effects styles for easy per-project customization.
Icon Library
250+ icons from Feather (v4.28).
Icons with multiple states are grouped together as variants for easy changes.
Foundations
Defined spacing classes.
Neutral color palette with error and on-colors.
Three standard elevations.
Layout grids at four breakpoints.
Spacing Classes, Typography, Colors, and Elevations.
Fluid grids at 4 breakpoints.
Interactive Components
Icon variants for fast state toggles and animations using interactive components.
Icon pack built from Feather Icons v4.28.
Icon states with animated button.
Input field adjustments.
States, Styles, Options
Matrices include a Bulk Edit area for making adjustments to the base components.
Fully nested Atom and Base components.
Deliberate use of larger matrices to make the final component much easier to use as all options are visible at the top level.
Partial view of Input field matrix.
Fully Customizable for fast builds
Customization of multiple components.
Final Thoughts
This design system can serve as a stepping-off point for any personal project. I can go from a wireframe to a fully functional prototype in a fraction of the time, with complete customization to suit the specifics of the project.
In my research, I found that some designers rely on deep nesting of components to build smaller matrices of variants. In practice, I found these difficult to use because it was hard to know how deep I could go when I wanted to make changes. The Inputs matrix has 240 variants. Yes that’s a lot and it took a while to build, but the final components are easier and faster to use and the entire set can still be easily updated by making changes to the atoms and bases in the Bulk Edit area.
More effort on the front end is always a worthwhile tradeoff for a more usable end result.