Memo Design System
Memo is a loud, single-person studio or freelancer site. It feels like a club flyer for a designer: an almost-black green page, everything written in one acid khaki colour, bold grotesk headlines, small uppercase muted paragraphs, and loose hand-drawn ellipses circling the important words. A running khaki ticker across the top keeps announcing AVAILABLE FOR FREELANCE WORLDWIDE — GET IN TOUCH. In the UI, purple appears only on the filled button; elsewhere it shows up only in the presentation page's image backdrops and swatches.
Four signatures make it recognisable:
- Ellipse outlines. The Menu button is a 280×70 ellipse drawn with a 2px khaki line, and page titles (Blog, Contact, Pricing) and small section labels (Client, Expertise) sit inside slanted, hand-drawn ovals. Avatars are cropped into ovals (about 70×44 at hero size) inside headlines.
- The ticker strip. A fixed 35px khaki bar at the very top with an 11px uppercase black marquee, items separated by long dashes.
- One colour for everything. Headlines, links, rules, borders and outlines are all #EEFDA0 on #071404. Paragraphs are the same khaki at 60% and set in uppercase.
- A thin fixed header line. A 1px khaki rule runs across the full viewport 150px from the top, under the script memo logo (left) and the ellipse Menu (right), both floating with mix-blend-mode: difference.
Memo is a dark-only design.
Colors
Surfaces
#071404Page, sections, menu overlay and footer (--black, a green-black)
#071404Same as canvas
#EEFDA0The ticker strip, section label pills, small credit pills (Beau Moody, Memo Founder), the menu-button hover
#071404Inputs are transparent on the canvas
#333333Measured input text and placeholder colours
#535353Measured input text and placeholder colours
Ink
#FFFFFFText on primary
#EEFDA0Headlines, links, outlines, rules, the logo (--khaki)
#EEFDA0 · 60%Paragraphs, always uppercase (base p colour #eefda099)
#071404Text on inverse-canvas
#FFFFFFText on service cards and photos
Action
#77477CThe filled pill button (View on Designer, Send Request)
#A76DADButton hover
#FA242ADeclared as --red; reserve for form errors
Lines & effects
#EEFDA02px borders on frames, ellipses and inputs; the 1px fixed header rule
#EEFDA0 · 21%Blockquote left border
#F5F5F5Light backing behind gallery images (8 uses)
Typography
General Sans · display-hero
The quick brown fox jumpsHome hero quote (.title-1, 8vw): Everything is designed. 115.2px · 600 · 1.0
General Sans · headline-lg
The quick brown fox jumpsCover titles (Meet Memo). 57.6px · 600 · 1.0
General Sans · title-lg
The quick brown fox jumpsPage-preview titles (Home, Blog Page); the feature-card captions (6+ Pages) are 21px / 600. 24px · 600 · 1.1
General Sans · label-lg
The quick brown fox jumpsFilled pill label. 17px · 600 · 1.2
General Sans · body
The quick brown fox jumpsParagraphs in ink-muted. 15px · 500 · 1.4
General Sans · eyebrow
The quick brown fox jumpsTicker items, tags, credit pills. 11px · 600 · 1.4 · 1px
Spacing & shape
| Purpose | Value |
|---|---|
| Container | 1200px max (.container), with a 1100px .medium-container for the footer and narrow content |
| Section rhythm | .section is 100px top and bottom with 5% side padding (72px at 1440px); 50px at ≤479 |
| Breakpoints | 991px, 767px and 479px, plus 1280px, 1440px and 1920px+ steps |
Spacing scale
| Token | Value | Preview |
|---|---|---|
xs | 10px | |
sm | 16px | |
md | 20px | |
lg | 30px | |
xl | 67px | |
2xl | 100px |
Layout spacing
| Token | Value | Preview |
|---|---|---|
edge | 25px | |
ticker-height | 35px | |
gutter | 72px | |
section | 100px | |
hero-top | 150px | |
header-line | 150px |
Border radius
Motion
| Scroll fade-up | opacity 0 → 1 and y 30px → 0, 500ms outExpo |
| Page load | opacity 0 → 1 and move to 0px, 1000ms outQuart |
| Mouse parallax | Images drift x/y ±5px over 500ms on mouse move |
| Ticker | Continuous horizontal marquee of the top strip |
| Menu open | Overlay switches to display: flex; links move to y 0% over 500ms inside overflow-hidden 110px rows (about a rise from below) |
| Menu button hover | Background and text colour swap, transition: all .2s |
| Button hover | Background #77477C → #A76DAD, 0.3s |
| Text link hover | .dark-link colour #EEFDA0 → #EEFDA099 |
Do’s and don’ts
- Keep every page on canvas #071404 with ink #EEFDA0 for type, lines and outlines.
- Circle key words, page titles and the menu button with 2px khaki ellipses.
- Set paragraphs uppercase at 15px in ink-muted (#EEFDA0 at 60%).
- Use the purple pill (#77477C, white text, 54px tall) for the one main action and an underlined uppercase text link beside it.
- Run the khaki ticker strip at the top and keep the fixed 1px header rule.
- Group content with 2px khaki frames, not with lighter panels.
- Add a grey, a second accent or a light section; the template never leaves the green-black canvas.
- Put white text on the hover purple #A76DAD below 17px semibold; it is about 3.9:1, so keep button labels at 17px weight 600.
- Use purple #77477C as a text colour on the canvas (about 2.7:1).
- Copy the measured input text #333333 and placeholder #535353 into new forms; on #071404 they are about 1.5:1 and 2.5:1. Set typed text in ink and placeholders in ink-muted.
- Use EB Garamond, even though it is loaded; nothing in the design uses it.
- Round frames and images; only pills and ellipses are rounded.
- Add more shadows than the single 15% image shadow.
Example prompt
Any page in the Memo style
More design systems like this
Agency design systems, the same colors first.
Bring any of them to your AI tool
All Access unlocks all 398 design systems, ready for Claude, ChatGPT, Gemini, Cursor, v0 and Lovable, plus 400+ templates on all 5 platforms.
Get All AccessUpgrade to All AccessHow to use the Memo design system
Pick a file to see what it’s for and where it goes.
What it is
The whole design system in one markdown file, written for AI: every color, type style, spacing value, component and motion rule, plus do's, don'ts and a ready prompt.
Best for
Claude, ChatGPT, Gemini, Cursor and v0, or any other AI tool that builds pages or code.
How to use it
- Put
DESIGN.mdin your project and mention it in your request, or save it as.cursor/rules/memo.mdc - For the rule file, start it with a front-matter block that sets
alwaysApply: true, so every chat uses it - Ask: “Build a pricing page using DESIGN.md.” Cursor follows the colors, fonts, spacing and rules
- Put
DESIGN.mdin the project root - Add one line to
CLAUDE.md: “Follow DESIGN.md for all UI.” - Ask for any page or component; Claude reads the file first
- Attach
DESIGN.mdto the chat (or paste it in) - Ask: “Build a landing page in this design system.”
- Keep the file in the chat or project knowledge, so follow-up pages stay on style
What it is
Every token as data, in the W3C Design Tokens format: colors with their roles, type styles, radius, spacing, and component tokens that point at them.
Best for
Figma (Tokens Studio), Style Dictionary and other design-token tools, and build scripts.
How to use it
- In Figma, open Tokens Studio, choose Import, and pick
tokens.json - Or point Style Dictionary’s
sourceat it to generate tokens for any platform - In code, import it like any JSON file
What it is
A Tailwind CSS v4 theme: every color, font, type style, radius and spacing value becomes a Tailwind utility, like bg-canvas, text-headline-lg or rounded-md.
Best for
Tailwind v4 projects, and AI builders that write Tailwind (v0, Lovable, Bolt).
How to use it
- Save
theme.cssnext to your main CSS file - Import it after Tailwind:
@import "tailwindcss"; @import "./theme.css"; - Use the classes:
bg-canvas text-ink rounded-md p-lg
What it is
The same tokens as plain CSS variables on :root. Component values point at the color variables, so changing one color updates everything that uses it.
Best for
Any website: plain CSS, Webflow custom code, Framer, WordPress.
How to use it
- Add it to your stylesheet, or in Webflow paste it into Site settings → Custom code inside a
<style>tag - Use the variables anywhere:
color: var(--color-ink) - Change a token once and every place that uses it follows






