Tokens
Tokens are named values for things like color and spacing. Ten color scales with 69 shades feed 119 tokens, set once for light mode and once for dark. Components never pick a color directly.
Design system · banking app
Kinetic is a design system for a consumer banking app. It covers the basics like color and type, the components, ready-made sections, full screens, and the rules that keep them consistent. Motion was designed in from the start, not added at the end. Every part runs live, and the phone screens run together as one working banking app you can use.
Opens in a new tab.
Overview
Everything in the system is the real thing, running live. Change the brand color and every screen updates, with the contrast checks run again.
Tokens are named values for things like color and spacing. Ten color scales with 69 shades feed 119 tokens, set once for light mode and once for dark. Components never pick a color directly.
One transaction list handles selection, account roles, hidden amounts, locked actions, and every loading and error state. Blocks and screens reuse it as is, so one fix fixes it everywhere.
Permissions, error recovery and contrast are shown working in the live system. Where a claim has a limit, the limit is written next to it.
Structure
Each layer is built only from the one below it. Every row opens that part of the system in a new tab.
Try it
These come straight from the system, not copies, so they are always up to date. They all work. Try typing into the keypad.
Theming
Kinetic builds all its colors from one brand color, using OKLCH, a color model that keeps lightness even. Then it adjusts any text color that fails WCAG AA contrast, lists every change, and rejects a color it can’t fix. Status colors stay fixed so green always means money. If a brand color is too close to that green, success turns teal.
In the new tab, pick a brand color at the top right and switch to dark mode. All 119 tokens update across every component, block and screen at once. Or open the phone app and send some money.