Design system · banking app

A design system for a banking app, with motion built in

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.

kinetic/app · the phone app · live
119
tokens
17
component groups
15
blocks
15
screen types
11
shared rules
0
one-off components

Overview

What Kinetic is

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

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 activity list

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.

Contrast and permissions

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.

Try it

Five live components

These come straight from the system, not copies, so they are always up to date. They all work. Try typing into the keypad.

components · amount entry
Live from the system. Try it here, or open it in the system ↗

Theming

Any brand color, still readable

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.

Electric Emerald Trust Blue Coral Orchid Teal Any hex you paste
Contrast check Text colors are adjusted until they pass AA, and every change is listed.
Account roles Primary, joint, teen and view only decide what is hidden or locked, using the same activity list in components, blocks and screens.
Data states The feed handles data, loading, empty, error and partial states everywhere it appears.
Motion tokens Eight motion tokens set timing and easing. The system itself handles the reduced motion setting.
Drift check An automatic check tests 42 tokens against the live page, so you can see for yourself whether anything has drifted.
No one-off components The fifteen screens and fifteen blocks add no new components. Everything they use already exists one layer down.

Open the system

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.