# Building the Vamo design system from a landing page

- Link: https://s9studio.com/insights/vamo-design-system/
- Published: 2026-10-14T09:00:00+01:00
- Author: sumitkafre

Vamo gives workers direct access to their wages through an FDIC-insured bank account,
a Mastercard debit card and $1.99 money transfers, all set up through their employer’s
payroll. When we redesigned the Vamo landing page, we quickly saw that the page 
was carrying decisions a growing product would need again and again: how a headline
should feel, which green means “go”, how a feature card is put together. On 9 October
we published Vamo Design System V1, built directly from the fourth version of the
landing page redesign. This is how we approached it, and what we would do the same
way again.

## Why a system, and why now

Small teams often postpone a design system until “later”, when the product is bigger.
The trouble is that later never gets easier. Every new page made without shared 
foundations adds another slightly different button, another shade of green, another
spacing value. By the time the system arrives, it has to untangle months of drift.

Vamo was at a useful moment. The landing page had been through four rounds of redesign
and review, so its decisions were tested rather than theoretical. The product team
was about to build more marketing pages and in-app screens. Capturing the system
at this point meant the next pages would start consistent instead of needing a clean-
up afterwards.

We also wanted the system to be small enough to be adopted. A large library that
nobody uses is worse than a modest one that everybody does. V1 was deliberately 
scoped to what the landing page actually needed.

## Extracting, not inventing

Instead of designing a component library in the abstract, we extracted it from a
page that already worked. We went through the landing page section by section and
asked the same question each time: is this a one-off, or a pattern we will need 
again? Navigation, section tags, feature cards, comparison rows, trust badges and
call-to-action buttons all passed that test.

Anything used only once stayed out. That rule kept V1 honest. Every component in
the library has a proven job, a real example and a reason to exist. When the team
asks “should this be in the system?”, the answer comes from usage, not from opinion.

Extraction also exposed inconsistencies we had not noticed while designing page 
by page. Two card styles that looked almost identical became one. Several near-identical
greys were reduced to a single token. The page itself improved as a result of building
the system from it.

> Every component in the library has a proven job, a real example and a reason to
> exist.

## Colour: five tokens with clear jobs

Vamo’s palette has five brand colours: Vamo Dark Blue (#1E2F59), Bright Green (#
95D904), Dark Green (#65A603), Air Green (#E1F2BD) and Gray Light (#F2F2F2). A palette
alone does not tell anyone how to use it, so each colour has a role.

Dark Blue carries headings and structure, and gives the brand its seriousness. Bright
Green is reserved for action and positive outcomes, so it keeps its meaning instead
of being used as decoration. Dark Green supports it where more contrast is needed.
Air Green creates calm, recognisable backgrounds, as in the security section of 
the page. Gray Light separates surfaces without adding visual noise.

Writing these roles down matters as much as the hex values. It is the difference
between a team that picks colours by taste and one that picks them by meaning.

## Type: three roles, one family

The type system uses one family, Nimbus Sans, in three clearly defined roles. Nimbus
Sans Black is for bold brand statements such as “Your money. Your life.” Nimbus 
Sans Bold is for screen titles and active text such as “Card Collection” and “Performance
Summary”. Nimbus Sans Regular covers body copy, input labels such as username and
password, and fine print.

Defining roles instead of a long list of sizes makes the system easier to apply.
A designer or engineer does not need to remember that a heading is 48 pixels on 
one page and 44 on another; they need to know whether the text is a statement, a
title or body copy. Sizes then follow from the role and the screen.

One family in three weights also keeps the brand consistent across very different
contexts, from a large campaign headline to the small legal text under a sign-up
form.

## How the file is organised

The system lives in four pages. The Cover states what the library is, its version
and its source: Landing Page Redesign V4. Foundations holds colour, typography and
the basic rules. Components contains the reusable web pieces with their states. 
The Playground is where new layouts are composed from existing components before
anything new is added to the library.

The Playground turned out to be one of the most useful parts. It gives people permission
to experiment without polluting the system. A new section is first assembled from
existing pieces. Only if it proves itself, and if it will be reused, does it graduate
into Components.

Composition rules sit alongside the components. They explain how pieces combine,
for example how a section tag, heading and supporting line stack together, so the
system describes layouts and not only parts.

## Mistakes we avoided

The first is building too much. It is tempting to add every possible variant of 
a button or card “just in case”. Each one has to be documented, maintained and kept
consistent with the rest. Unused variants also make the library harder to navigate,
so people fall back to building their own.

The second is separating the system from the people who use it. We reviewed V1 with
the people who would build the next pages before publishing it, so the names, organisation
and rules matched how they actually work. A system that makes sense only to its 
authors does not get adopted.

The third is treating the first version as final. Publishing it as V1, with a date
and a source, made it clear that the system would evolve, and that feedback was 
expected rather than a sign that something had gone wrong.

## Helping the team adopt it

Adoption is where most design systems succeed or fail. We kept the entry point simple:
the Cover explains what the system is for, and Foundations can be read in a few 
minutes. Anyone designing a new page starts in the Playground with real components
rather than a blank canvas.

We also made the source visible. Because every component came from the landing page,
people can see exactly how it is meant to be used in context. That is often more
useful than an abstract usage guideline.

## What comes after V1

A design system is a product, not a project. V1 is a starting point with a version
number, which signals that it will change. New components will be added when real
pages need them, and existing ones will be refined as the team learns how they behave
in production.

The most important habit is to keep the system and the product in step. When a page
needs something the system does not have, that need is recorded and reviewed, rather
than solved quietly with a one-off. Over time, that discipline is what keeps a brand
feeling like one company, even as more people contribute to it.

## What made V1 work

 * Extract the system from real, reviewed work rather than designing it in the abstract.
 * Give every colour and type style a written role, not just a value.
 * Use a playground to compose new layouts before anything joins the library.
 * Version the system and keep it in step with the product.
