Vero

Vero's iOS app is the anti-feed.

Back to all styles

A live page in this style is not built yet — the CSS variables and the prompt below are enough to reproduce it.

At a glance

21tokens
9type steps
1radius steps
10pxspacing base

Vero, in one page

Vero's iOS app is the anti-feed. Its entire reason to exist is a reaction against algorithmic timelines, engagement-bait, and infinite ad walls — so the design philosophy is *calm, chronological, and deliberate*. The canvas is pure true-black (#000000), not a charcoal, because Vero presents content like a gallery wall: an OLED-deep void around full-bleed photography so the image is the only light in the room. There are no trending modules, no "for you" reshuffling, no read-receipts pressure. The feed is strictly chronological — newest first, never reordered — and that promise is itself a design principle: nothing in the UI implies an algorithm is choosing for you.

The signature creation moment is the 7 post-type selector. Unlike single-purpose social apps, Vero treats a "post" as one of seven distinct, first-class media types — Photo, Video, Link, Music, Film, Book, Place — each with its own icon, its own composer, and its own card rendering in the feed. A book post shows a cover + author + star rating; a music post shows album art + track; a place post shows a pin + map; a film post shows a poster + your rating. This typed-post system is the structural soul of Vero and the most recognizable interaction: the horizontal row of seven icons that opens the compose flow. The second signature surface is the chronological feed itself — uniform, quiet post cards separated by hairline #232325 dividers, each headed by a circular avatar, the author's name, and a small colored post-type chip that tells you *what kind* of thing you're looking at before you read a word.

Color is austere and singular. There is exactly one brand expression: a teal→blue gradient (#00D1C1 → #0079D3) that appears on the wordmark, the primary "Post" CTA, the compose ring in the tab bar, and active states. A flat teal (#00C2B8) carries small accents — the liked heart, the active post-type icon, links. There is no second brand color; the only other saturated hue is a restrained camera-amber (#E8B23A) for star ratings on book/film posts, nodding to Vero's photographer-and-film-buff audience. Text is pure white (#FFFFFF) for names and titles, a soft gray (#9A9AA0) for captions, and a quiet gray (#5E5E64) for metadata. Typography is Manrope — a clean, modern geometric sans with a slightly humanist warmth — sized for unhurried reading: 18pt author names, 14pt captions, generous line height, nothing aggressive.

Key Characteristics:

Do's and don'ts

Do

  • Use pure true-black (#000000) as the canvas — Vero is a gallery wall, OLED-deep
  • Keep the feed strictly chronological, newest-first — it's a design promise, not just a setting
  • Treat all 7 post types (Photo/Video/Link/Music/Film/Book/Place) as equal, first-class citizens
  • Show the teal post-type chip on every post so the *kind* of content is legible before reading
  • Use the teal→blue gradient (#00D1C1 → #0079D3) sparingly — wordmark, Post CTA, compose ring, active
  • Separate posts with hairline #232325 dividers — no card boxes
  • Use flat teal (#00C2B8) for small accents — liked hearts, active icons, links
  • Reserve Camera Amber (#E8B23A) for book/film star ratings only
  • Favor full pills (999pt) for buttons, search, chips
  • Keep type calm — Manrope, 14pt captions with 1.5 line height, unhurried

Don't

  • Don't use charcoal (#0E0E10 is for inset cards, not the canvas) — the canvas is pure #000000
  • Don't add a "trending", "for you", or "suggested" rail — Vero is explicitly anti-algorithm
  • Don't reorder the feed by engagement — newest-first, always; new posts insert at top
  • Don't privilege one post type over the others — all seven are co-equal
  • Don't add a second brand color — there is only the teal→blue gradient and flat teal
  • Don't reuse Camera Amber for warnings or decoration — it means "rating", nothing else
  • Don't wrap posts in card boxes/shadows — hairline dividers on true-black only
  • Don't use heavy drop shadows on content — they're invisible on black; use hairlines + barely-lifted surfaces
  • Don't crowd captions — 14pt with generous 1.5 leading; calm over dense
  • Don't crop photos algorithmically — respect the photographer's original frame

Copy this into your AI builder

Paste it as-is. Every value below was measured from the original site, not guessed.

Assembled from the measured tokens — the source document has no prompt block.

Build a page in the Vero design language. Follow the measured tokens below — do not substitute your own palette.

Colors:
- teal→blue gradient: #00d1c1
- Brand Gradient: #00d1c1
- Vero Teal: #00c2b8
- Vero Blue: #0098e6
- Gradient Stop A: #00d1c1
- Gradient Stop B: #0079d3
- Teal Pressed: #00a89f
- True Black: #000000
- Surface 1: #0e0e10
- Surface 2: #161618

Type:
- families: Manrope, Fallback Stack, Numerals, Dynamic Type
- scale: 10, 11, 13, 14, 15, 18, 22, 26, 32
- weights: 400, 500, 600, 700, 800

Shape:
- radius: 10

Spacing: 10, 11, 12, 13, 16

Rules:
- Use pure true-black (`#000000`) as the canvas — Vero is a gallery wall, OLED-deep
- Keep the feed strictly chronological, newest-first — it's a design promise, not just a setting
- Treat all 7 post types (Photo/Video/Link/Music/Film/Book/Place) as equal, first-class citizens
- Show the teal post-type chip on every post so the *kind* of content is legible before reading
- Use the teal→blue gradient (`#00D1C1 → #0079D3`) sparingly — wordmark, Post CTA, compose ring, active
- Separate posts with hairline `#232325` dividers — no card boxes

Avoid:
- Don't use charcoal (`#0E0E10` is for inset cards, not the canvas) — the canvas is pure `#000000`
- Don't add a "trending", "for you", or "suggested" rail — Vero is explicitly anti-algorithm
- Don't reorder the feed by engagement — newest-first, always; new posts insert at top
- Don't privilege one post type over the others — all seven are co-equal
- Don't add a second brand color — there is only the teal→blue gradient and flat teal
- Don't reuse Camera Amber for warnings or decoration — it means "rating", nothing else

Keep every value literal. If a token is given, use that exact value.

The specification

Colour paletteRead the full spec

Primary (Interactive)

  • Brand Gradient (#00D1C1 → #0079D3, 135°): The single brand expression — wordmark, primary "Post" CTA, compose ring, gradient fills.
  • Vero Teal (#00C2B8): Flat accent — liked hearts, active post-type icons, active tab tint, links, focus rings.
  • Vero Blue (#0098E6): Secondary flat accent / the blue end of the gradient when a flat blue is needed.
  • Gradient Stop A (#00D1C1): Teal end (top-left).
  • Gradient Stop B (#0079D3): Blue end (bottom-right).
  • Teal Pressed (#00A89F): Pressed state for flat teal elements.

Canvas & Surfaces (Dark — primary mode)

  • True Black (#000000): The app background — pure black, gallery void, OLED-deep.
  • Surface 1 (#0E0E10): Embedded cards (book/music/place post inner cards), sheets — barely lifted.
  • Surface 2 (#161618): Composer fields, pickers, pressed list rows.
  • Divider (#232325): Hairline separators between posts and sections — the primary structural line.
  • Overlay Scrim (rgba(0,0,0,0.6)): Dim behind modals/sheets.

Canvas & Surfaces (Light — secondary, rare)

Vero is true-black-first; a light mode exists for accessibility/parity.

RoleLight ModeDark Mode
Canvas#FFFFFF#000000
Surface 1#F6F6F7#0E0E10
Surface 2#ECECEE#161618
Divider#E4E4E6#232325
Text Primary#0B0B0C#FFFFFF
Text Secondary#6A6A70#9A9AA0

Text

  • Text Primary (#FFFFFF): Author names, post titles, screen titles — pure white.
  • Text Secondary (#9A9AA0): Captions, descriptions, body — soft gray.
  • Text Tertiary (#5E5E64): Timestamps, counts, metadata, inactive tab labels — quiet gray.
  • Text on Gradient (#FFFFFF): On the teal→blue gradient (white reads well on both ends).

Accent & Ratings

  • Camera Amber (#E8B23A): Star ratings on Book and Film posts only — a nod to the film-buff audience. Never a generic warning.
  • On-Amber Ink (#1A1206): Text/glyph on amber chips.

Semantic

  • Success (#2ECC71): Post-published toast, "Connected" confirmation.
  • Error (#FF4D4F): Failed post, destructive confirm, validation.
  • Warning (#E8B23A): Reuses Camera Amber for soft warnings (consistent palette discipline).
  • Connection Teal (#00C2B8): "Connection request" / relationship-tier accents (Vero's Close Friends / Friends / Acquaintances / Followers model).
Type scaleRead the full spec

Font Family

  • Primary: Manrope (by Mikhail Sharanda / Mirko Velimirović, SIL OFL) — a clean modern geometric sans with subtle humanist warmth and excellent screen rendering. Closest free Google Font to Vero's calm, modern product type.
  • Fallback Stack: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'SF Pro Text', 'Segoe UI', Roboto, Helvetica, Arial, sans-serif
  • Numerals: Tabular figures for counts and timestamps so the post action row doesn't shift.

Hierarchy

RoleFontSizeWeightLine HeightLetter SpacingNotes
DisplayManrope32pt8001.15-0.4ptTop-level "Feed" / wordmark scale
Screen TitleManrope26pt7001.2-0.3pt"Discover", section landings
Section HeaderManrope22pt7001.25-0.2pt"People you follow"
Post AuthorManrope18pt7001.3-0.1ptAuthor name in the post head (often shown 14pt in compact lists)
Post Author (Compact)Manrope14pt7001.30ptAuthor name in feed card
TitleManrope15pt6001.350ptBook/film/music titles inside typed cards
Caption / BodyManrope14pt5001.50ptPost captions, descriptions
Body (Reading)Manrope14pt4001.60ptLong captions, comments
MetadataManrope13pt4001.40pt"Photo · 14m ago", counts
ButtonManrope15pt7001.00.2ptPrimary/secondary buttons
Type LabelManrope11pt6001.00.4ptPost-type chip / selector labels
Star RatingManrope11pt6001.01.0pt★★★★★ amber rating row
Tab LabelManrope10pt5001.00ptBottom tab labels
OverlineManrope11pt6001.00.4ptUppercase section overlines

Principles

  • Unhurried reading: type is calm — author at 14–18pt, captions at 14pt with 1.5 line height, never crowded.
  • Weight for hierarchy: 700 for names/titles, 500 for captions, 400 for long reading; 800 reserved for the single Display.
  • Metadata recedes: 13pt #5E5E64 keeps "Photo · 14m" present but never competing with the image.
  • The type chip is meaningful: the 11pt teal post-type label is a functional signpost, not decoration.
  • Dynamic Type: titles, captions, body scale; type labels, tab labels, star ratings stay fixed (layout-critical).
Components and layoutRead the full spec

Buttons

Primary Button (Post / Publish)

  • Shape: Full pill, 999pt corner radius
  • Background: linear gradient #00D1C1 → #0079D3 (135°)
  • Text: #FFFFFF, Manrope 15pt weight 700
  • Padding: 13pt vertical, 28pt horizontal
  • Pressed: filter: brightness(0.94) + scale 0.98
  • Disabled: gradient at 40% opacity, text at 60%

Outline Button (Connect / Follow primary)

  • Background: transparent
  • Border: 1.5pt #00C2B8
  • Text: #00C2B8, Manrope 14pt weight 700
  • Padding: 11pt vertical, 22pt horizontal
  • Corner radius: 999pt
  • Pressed: background rgba(0,194,184,0.10)

Ghost / Surface Button (Follow secondary)

  • Background: #161618
  • Border: 1pt #232325
  • Text: #FFFFFF, Manrope 14pt weight 600
  • Corner radius: 999pt (Vero favors full pills)
  • Pressed: background #232325

Text Button (See all post types)

  • Text: #00C2B8, Manrope 14pt weight 600
  • No background, no underline
  • Pressed: 70% opacity

Core Atoms

Avatar

  • Circle, 38pt in feed (28pt in lists, 80pt on profile)
  • Fallback: brand gradient #00D1C1 → #0079D3
  • Relationship ring (optional): 1.5pt — teal for Close Friends, gray otherwise

Post Card

  • No card border or background — posts sit directly on #000000, separated only by a 0.5pt #232325 divider
  • Padding: 16pt horizontal, 16pt top / 14pt bottom
  • Media corner radius: 10pt
  • This "no card chrome" choice is core to the gallery-wall feel

Post-Type Chip (in post head)

  • Inline, no background
  • Leading 11pt type icon + label, both #00C2B8
  • Manrope 10–11pt weight 700
  • Followed by " · {timestamp}" in #5E5E64

Typed Inner Card (Book / Music / Film / Place)

  • Background: #0E0E10, 1pt #232325 border, 10pt radius, 12pt padding
  • Book: 56×80pt cover + title (15pt w600) + author (12pt #9A9AA0) + amber stars
  • Music: 56×56pt album art + track + artist + play glyph
  • Place: map thumbnail + place name + teal pin
  • Film: poster + title + your rating (amber stars)

Media (Photo / Video)

  • Aspect ratio: respects original (commonly 4:5 portrait), 10pt corners
  • Video: teal play affordance center, duration chip bottom-right
  • Never algorithmically cropped — Vero respects the photographer's frame

Navigation

Top Bar

  • Height: 44pt + safe area
  • Leading: "VERO" wordmark — gradient-filled text, letter-spaced
  • Trailing: search glyph + notifications bell, 21pt #FFFFFF, 1.8pt stroke
  • Background: #000000, 0.5pt #232325 bottom border only when scrolled

Post-Type Selector Row (under top bar OR as compose sheet)

  • Horizontal row of all 7 types: Photo, Video, Link, Music, Film, Book, Place
  • Each: 19pt icon + 9–11pt label, evenly distributed
  • Inactive: #5E5E64; active/selected: #00C2B8
  • 0.5pt #232325 bottom border

Bottom Tab Bar

  • Height: 50pt + safe area (66pt visual)
  • Background: rgba(0,0,0,0.96) + saturate(180%) blur(20px)
  • Top border: 0.5pt #232325
  • 5 slots: Feed, Discover, Compose (center, gradient ring), Inbox, Profile
  • Icon size: 22pt (Compose center 27pt with gradient stroke ring)
  • Active color: #00C2B8 (icons fill); inactive: #5E5E64
  • Labels: Manrope 10pt weight 500 (Compose label blank — icon-only)

Profile Header

  • 80pt avatar, name 22pt weight 700, relationship-tier control (Close Friends / Friends / Acquaintances / Followers)
  • Tab strip: "Posts", "Collections", "About" — underlined 2pt teal active

Input Fields

Search Field

  • Height: 44pt
  • Background: #161618
  • Border: none (focus: 1.5pt #00C2B8)
  • Corner radius: 999pt (pill search) or 12pt
  • Leading magnifier 16pt #5E5E64
  • Placeholder: "Search people, posts" Manrope 14pt #5E5E64

Caption Composer

  • Background: #000000 (full-screen compose) with #232325 field outline
  • Text Manrope 16pt #FFFFFF
  • Placeholder varies by type: "Write a caption…", "What did you think of this book?"

Distinctive Components

7 Post-Type Selector (the signature)

  • Compose entry shows a grid/row of seven equally weighted cells: Photo, Video, Link, Music, Film, Book, Place
  • Cell: icon (20pt) + label (10pt w600), #0E0E10 bg, 1pt #232325 border, 12pt radius
  • Selected cell: border #00C2B8, content #00C2B8, background rgba(0,194,184,0.08)
  • This is the structural heart of Vero — all seven are first-class, none is "primary"

Chronological Feed Promise

  • The feed is strictly newest-first; surface a quiet "Caught up" / chronological indicator rather than any "suggested for you" rail
  • No engagement-driven reordering, no algorithmic insertions

Post Action Row

  • Like (heart), Comment (bubble), Share (tray) — 19pt icons #9A9AA0, count Manrope 12pt w600
  • Liked: heart fills #00C2B8
  • Evenly spaced with 22pt gaps, no background

Relationship Tier Selector (Vero's signature privacy model)

  • When following: choose Close Friends / Friends / Acquaintances / Followers
  • A segmented or list control; selected tier highlighted teal
  • Governs who sees each post — surfaced at post time too

Compose Ring (tab bar center)

  • A circle with a gradient stroke (#00D1C1 → #0079D3) and a + glyph
  • Tapping opens the 7-type selector
  • The brand gradient's most prominent placement

Book / Film Rating Stars

Responsive behaviourRead the full spec

Device Sizes

DeviceWidthKey Changes
iPhone SE (3rd gen)375ptPost-type selector scrolls horizontally if cramped; 14pt author
iPhone 13/14/15390ptStandard layout — all 7 type icons fit the row
iPhone 15/16 Pro393ptDynamic Island accommodated in top bar
iPhone 15/16 Pro Max430ptLarger media; 38pt avatars; comfortable 7-type row
iPad (portrait)768ptSingle centered stream (max ~620pt) — NOT a grid; Vero stays single-column
iPad (landscape)1024pt+Same centered single stream; optional left rail for nav only

Dynamic Type

  • Scales: screen titles, author names, captions, body, descriptions
  • Fixed: post-type labels, tab labels, star ratings, type chips (layout-critical)
  • Long captions expand inline with a "more" toggle

Orientation

  • Portrait-first (a reading/gallery app)
  • Landscape supported; media scales to fit, single stream maintained
  • iPad Split View supported; stream stays centered and single-column

Touch Targets

  • Post-type selector cell: full cell tappable, ≥ 56pt
  • Tab bar items: 22pt glyph, 48pt hit; compose ring 27pt glyph / 56pt hit
  • Like/Comment/Share: 44pt hit each
  • Buttons: ≥ 36pt tall (pills)

Safe Area Handling

  • Top: top bar + Dynamic Island respected
  • Bottom: tab bar + home indicator respected; compose sheet respects bottom inset
  • Sides: 16pt content inset; media full-bleed within insets
  • Keyboard: caption composer rises above keyboard; feed scrolls clear

Drop-in CSS variables

The same values as a theme block. Add the class to <body> and the site repaints.

body.theme-vero {--page-bg: #ffffff;
  --page-bg-gradient: none;
  --text-color: #555555;
  --heading-color: #555555;
  --link-color: #008175;
  --link-hover-color: #004e47;
  --border-color: #e0e0e0;
  --card-bg: #ffffff;
  --card-shadow: 0 1px 2px rgba(85,85,85,0.06);
  --card-hover-shadow: 0 6px 18px rgba(85,85,85,0.12);
  --header-bg: #555555;
  --header-text-color: #ffffff;
  --header-shadow: none;
  --footer-bg: #ffffff;
  --footer-text-color: #737373;
  --button-bg: #00d1c1;
  --button-text-color: #000000;
  --button-hover-bg: #009e92;
  --button-border: none;
  --button-border-radius: 10px;
  --button-secondary-bg: #f5f5f5;
  --button-secondary-text-color: #555555;
  --button-secondary-hover-bg: #ebebeb;
  --button-secondary-border: 1px solid #e0e0e0;
  --prompt-bg: #f7f7f7;
  --prompt-text-color: #555555;
  --base-font: var(--font-sans);
  --heading-font: var(--font-sans);
  --card-border-radius: 10px;
}

Download theme.css

Visually close to

Measured with a deterministic colour + geometry comparison across 958 styles. Not a hand-picked list.

Where this came from

Source document
ios/design-md/social/vero/DESIGN.md · 23.9 KB
Repository
Meliwat/awesome-ios-design-md
Licence
MIT

Source text is reproduced under its original licence. Tokens, similarity scores and page structure are ours.