Brand & design system

Everything the MakeHelm brand is made of — colour, type, the marks, the illustration set, the components and how they move. Every mark here was drawn by hand; nothing is licensed stock.

01 — The idea

A helm is a ship’s wheel

The whole brand comes from taking the name literally. MakeHelm builds small boats, puts them in real water, and either sails them or hands them to a better captain. That gives us a warm palette, hand-drawn illustration, and a tone that is plain-spoken with a light nautical touch.

The one rule that keeps it from becoming a theme park: the illustration carries the metaphor, the copy carries the meaning. Nautical words earn their place only when they are also the clearest word available — “fleet”, “ship log”, “a better captain”. If a sentence needs a decoder ring, rewrite it.

02 — Colour

Ten colours, each with one job

Nothing is pure black or pure white. Ink is the only outline colour and the only body-copy colour. Click a swatch to copy the hex.

Ink --ink

Every outline, every piece of body copy, every border. Nothing on this brand is drawn in pure black.

Cream --cream

The page. Warmer than white, which is what stops the whole thing feeling clinical.

Sky --sky

Top of the hero gradient, and the header band on inner pages.

Sky deep --sky2

Bottom of the hero gradient. Also the default deck colour on a fleet card.

Sea --sea

Bands that carry white text, and the mid wave layer.

Sea deep --sea2

The footer, and the deepest wave layer.

Sun --sun

Primary buttons, eyebrow pills, the pennant. The colour that says “press this”.

Coral --coral

Secondary buttons, the fore sail, the wavy underline. Use sparingly — it is the loudest thing here.

Mint --mint

One job only: something is live.

Wood --wood

Hulls. Illustration only — never a background, never text.

Wood is illustration-only. It exists so hulls read as wood. It is never a background and never text — there is no size at which orange type on cream is a good idea.

03 — Contrast

Measured, not eyeballed

Every pairing actually used in the product, with its real WCAG 2.1 ratio. A cheerful palette is exactly the kind that fails quietly, so these are checked rather than assumed.

PairingWhereRatioGrade
Ink on Creambody copy12.29AAA
Ink on Whitetext on cards13.10AAA
Ink on Sky deephero headline8.80AAA
Ink on Sunprimary button label9.07AAA
White on Seacopy on the blue band5.45AA
White on Sea deepfooter copy6.46AA
Ink on Coralsecondary button label4.68AA
Ink on MintLIVE pill6.36AA
#4a6580 on Whitemuted card copy6.06AA

Building this table found four real failures and changed the palette. Sea was #2f86d6 and carried white body copy at 3.82 — below the 4.5 needed, so it darkened to #236cb1. The coral button had white text at 2.80 and now uses ink at 4.68. Footer registration text and sold-card copy were both under 4.0 and were lightened and darkened respectively. Measure before you ship, not after.

04 — Type

Two families, no exceptions

Fredoka for anything structural — headings, the wordmark, buttons, labels. Nunito for anything you read in sentences. Fredoka never sets body copy; Nunito never sets a heading.

We build small boatsFredoka 700 · clamp(38–66px) · -0.02em
What’s out on the waterFredoka 700 · clamp(28–44px)
Need a boat of your own?Fredoka 600 · 22px
Body copy sits at seventeen pixels with generous line height, because the page is meant to be read rather than scanned.Nunito 400 · 17px / 1.65
Supporting copy inside a card.Nunito 400 · 15px · #4a6580
Eyebrow labelFredoka 600 · 13px · 0.12em caps
05 — Marks

The wheel and the boat

The wheel is the logo — it sits beside the wordmark and nowhere else. The boat is the mascot: it does the favicon, the illustration and the 404. Never use both in one lockup.

MakeHelm

Six alternate marks were explored before settling here — they are all still on the logo marks page, tested down to favicon size.

06 — Illustration

The library

Every illustration on the site is inline SVG written by hand — no image files, no icon font, no licensed stock. Copy any of them straight into your markup.

boatThe mascot. Appears in the hero, on every fleet card, in the footer and on the 404.
wheelThe primary mark. A helm is a ship’s wheel — this is the logo.
sunHero only. Rotates once every 44 seconds.
cloudFlat-bottomed so it sits on an invisible horizon. Never overlap it with text.
gullThe smallest piece of punctuation in the set. Always faded.
anchorSection icon for anything about exits or stopping.
swellSection icon for growth. Three strokes, never more.
flagStatus marker. Mint when flying, grey when furled.
lighthouseThe one piece of set dressing. Used once, in the client-work section.
waveThe workhorse. Every band change on the site is this path, layered two or three deep.

Drawing rules

07 — Components

Thick lines and hard shadows

Everything is built from the same three decisions: a 3px ink border, a generous radius, and a hard offset shadow with no blur. Nothing here uses a soft shadow.

Buttons

Pills

How we sail Live Sold

Cards

A card looks like this

3px ink border, 22px radius, 6px 6px 0 shadow, white fill. Fleet cards add a coloured “deck” band with a waterline, and tilt a degree either way so they look moored rather than aligned.

Wave dividers

Every change of background is a wave, never a straight edge. Layer two or three at different heights and speeds for depth.

<div class="waves">
  <svg class="w-back"  viewBox="0 0 2400 76" preserveAspectRatio="none">…</svg>
  <svg class="w-mid"   viewBox="0 0 2400 76" preserveAspectRatio="none">…</svg>
  <svg class="w-front" viewBox="0 0 2400 76" preserveAspectRatio="none">…</svg>
</div>

/* the viewBox holds two identical cycles, so a -50% slide loops seamlessly */
.waves svg{position:absolute;bottom:0;left:0;width:200%;height:100%}
.w-back{animation:roll 14s linear infinite}
.w-mid {animation:roll 10s linear infinite reverse}
08 — Motion

Slow enough to ignore

Everything drifts. Nothing demands attention. If a visitor notices an animation running, it is too fast.

Every one of these is switched off under prefers-reduced-motion. That is not optional — a page with six looping animations is genuinely unpleasant for people who are sensitive to motion.

@media(prefers-reduced-motion:reduce){
  .sun .rays,.cloud,.gulls,.boat,.foot-boat,.waves svg,
  .logo .wheel svg,.vessel,.deck-water{animation:none!important}
}
09 — Voice

Plain, concrete, unbothered

Short sentences. Real numbers instead of adjectives. Say the awkward part out loud rather than working around it.

Do

“Concept to deployed product in weeks.” Specific and checkable.

“You own the code. No lock-in, no ongoing fees.” Answers the real worry.

“Some we keep. Some we hand to a better captain.” Nautical, but also just true.

“Four domains migrated. Hosting bill went to zero.” Numbers do the bragging.

× Don’t

“Leveraging synergies to deliver best-in-class solutions.” Means nothing.

“Let’s batten down the hatches and chart a course to port!” Theme park.

“Trusted by industry leaders.” Not if you cannot name them.

“We’re passionate about innovation.” Everyone says this. Say what you did instead.

10 — How it’s built

One file, no build step

The constraint is the design system as much as the colours are. Every page on makehelm.com is a single self-contained HTML file.

This is a deliberate position, not laziness. A brochure site that needs a toolchain to change a sentence is a brochure site that stops getting changed.