Pre-implementation review · 27 October 2026

A new star
for communication.

NOVA is a private messenger built on five principles: privacy, speed, simplicity, intelligence and beauty. This canvas is the design contract — identity, tokens, components, twelve screens plus the Arabic mirror, and the motion between them.

13
screens
26
components
2
themes
4
tabs

00 · Principles

Five rules that decide everything else.

Each principle has a test and a refusal. If a feature cannot pass the test, it does not ship — regardless of what competitors do.

01

Privacy first

E2EE everywhere, handle-first identity, no contact graph on the server. Test: zero plaintext in any log.

02

Speed

Optimistic send in under 16ms, no spinners on cached data. Test: cold start p95 < 700ms.

03

Simplicity

Four tabs, one primary action per screen, settings that read as sentences. Test: the one-job rule.

04

Intelligence

AI on the device first, cited, reversible, never speaking as you. Test: every answer has a source.

05

Beauty

Continuous corners, optical alignment, one accent per viewport. Test: review at 100%, not at 60%.

01 · Identity

A star that suddenly brightens.

A four-point star drawn from two intersecting curves, with a 0.5× clear space. It reads at 16pt, survives a favicon, and has no competitor silhouette. The gradient appears only in the app icon; everywhere else the mark is a single colour.

Primary mark · on ink
Primary mark · on paper
NOVA
Lockup · 0.5× clear space
Icon · gradient / monochrome
Do One colour on surfaces. 16pt minimum. Uppercase wordmark, +0.14em tracking.
Don't Rotate, outline, shadow, or place on a photo without a 40% scrim.

02 · Colour

Depth from hairlines, not shadows.

Two themes, designed separately. Blue is the action colour, violet means “this is not ordinary” — AI, secret chats, vault. Every value below was measured against WCAG 2.2, not estimated.

ink.0#09090B · base
ink.2#16181D · surface
ink.9#F4F5F7 · text
blue.500#4F7CFF · brand
blue.600#3D63DB · fill
violet.500#8B5CF6 · AI
green.500#22C55E · success
amber.500#F59E0B · warning
red.500#EF4444 · danger
paper.0#FFFFFF · card
PairRatioVerdict
F4F5F7 on 09090B18.24:1AAA
A1A5B0 on 09090B8.08:1AAA
82869A on 09090B5.52:1AA
FFFFFF on 3D63DB (button fill)5.24:1AA
FFFFFF on 4F7CFF3.71:1Large text only
2F55C8 on FFFFFF (light ink)6.45:1AA+

That last finding is why filled buttons use blue.600 while blue.500 stays the icon and selected-state colour. Brand hex everywhere would have failed AA on every button label.

03 · Typography

Inter for the interface. Inter Tight for the voice.

Display · 34/40 · 600Aa
Title 2 · 22/28 · 600Conversations
Body · 17/24 · 400Messages disappear after 24 hours. Screenshots are still possible — we would rather tell you than pretend.
Footnote · 13/18 · 400Today, 21:04 · delivered · edited
Micro · 11/14 · 600 · +6%INNER ORBIT
Mono · 13/18@aisha · 60-digit · 1F 4C 9A…
Arabic · IBM Plex Sans Arabicالمحادثات تختفي بعد ٢٤ ساعة.

Rules

  • Two weights per screen, plus one display weight if needed.
  • 28–40 characters per line inside a bubble; 78% max width.
  • All times, counts and durations are tabular — counters never reflow.
  • 310% dynamic type: intrinsic heights only, no fixed containers.
  • Arabic sets at the same optical size with +2pt line height.
NOVA Private by
construction.
Inter Tight 600 · −2.2% tracking

04 · Space, shape, icons

A 4pt grid with continuous corners.

Spacing scale

4
8
12
16
20 · gutter
24
32 · section
40

Corner radii · 60% smoothing

6
10
14
18
22
28

Bubbles are 22pt with a 6pt origin corner and no tail. It is the single most recognisable shape in the product.

Icon family · 24pt grid · 1.75 stroke · round caps

orbit constellation call profile chat send lock disappearing AI security hidden file voice camera recall language

05 · Components

Twenty-six components, twelve states each.

A component is not finished until it has been designed in default, focused, pressed, loading, empty, error, offline, disabled, permission-denied, long-text, RTL and 310% type. Shown here in dark; every one has a light counterpart.

Actions
Handle field
@aisha

Available. This is how people find you.

@novaTaken
nova.studionova_omn0va
Settings rows
Phone numberOnly you can see this
Hidden
Read receiptsReciprocal by design
Live captionsOn this device only
Chips, presence, pulse
UnreadWorkFamily
from:Ahmed ×type:document ×
AA
DO
LH
online
Message bubbles · no tails, 22pt with a 6pt origin corner
Clause 7 is fine by me.21:04
Sending the signed copy now.21:05
0:14
❤️ 2👍 1+
Composer
Message
AishaClause 7 is fine by me.
AI consent strip

The signed agreement [1] and the cost schedule [2] were shared on 12 Sep.

1 · Ahmed · 12 Sep2 · Ahmed · 14 Sep
Safety Star

Verified since March
3 devices · key rotated 12 days ago

06 · High-fidelity screens

Twelve screens, plus the Arabic mirror.

Rendered at 390 × 844 in the real token system. Dark is the reference build; the light theme is designed rather than inverted; the last frame is the Arabic mirror. Every screen does one job and offers one primary action.

9:415G
NOVA

A new star
for communication.

Private by default.
Yours by design.

End-to-end encrypted · no ads · your number stays private

01 · First lightOne promise, one action, no carousel
9:415G

Claim your
handle.

This is how people find you.
Your phone number stays private.

@aisha

Available · 1 change every 30 days

aisha.maisha_oma.harthy
Use Face ID instead of a passwordPasskey · stored on this device
02 · IdentityThe handle is the first promise
9:415G

Orbit

AllUnreadWorkFamily

Inner orbit

AA
Aisha Al-Harthy21:04

Contract_v4_final.pdf · 3.4 MB

DeliveredLocked
DG
Design GuildNow

Daniel: Voice room in ten minutes

24 listeningIn 10 min

Active

DO
Daniel OkaforYou: tomorrow works ✓✓
18:12
M
Mama2 voice notes
17:40
SN
Studio NorthYara: the deck is ready
16:02
Drifting · 6
Chat Communities Calls Profile
03 · OrbitGravity groups · no numeric badges · one floating action
9:415G
AA
Aishaonline

Today · 20:58

Sent the signed copy. Take a look tonight?21:02
On it. Clause 7 is the one I want to check.21:04
supplier_agreement.pdf3.4 MB · PDF

Signed version — clause 7, page 12.

0:14
❤️ 2👍 1+
Aisha is typing
Message
04 · ConversationNo tails · asymmetric corners · one metadata slot
9:415G
AA
Aishaonline

Today · 20:58

Sent the signed copy. Take a look tonight?21:02
On it. Clause 7 is the one I want to check.21:04
Perfect. I will be up until midnight if you need me.21:06
Then I will send notes tonight.21:07
supplier_agreement.pdf3.4 MB · PDF

Signed version — clause 7, page 12.

Message
05 · Light themeDesigned, not inverted · body text at 4.5:1
9:415G
from:Ahmed ×type:document ×Sep ×
Ask NOVAon this device

The signed supplier agreement [1] and the cost schedule [2] were shared on 12 September. Only the agreement was countersigned.

[1] Ahmed · 12 Sep[2] Ahmed · 14 Sep

Documents · 3

supplier_agreement_signed.pdf3.4 MB · 12 Sep · Ahmed
cost_schedule_v2.xlsx820 KB · 14 Sep · Ahmed
Photos 2Links 7Voice 1Dates
06 · RecallParsed facets make the query legible
9:415G
AA
Aishaonline
Sent the signed copy. Take a look tonight?
On it. Clause 7 is the one I want to check.
Perfect. I will be up until midnight.

Ask NOVA

✕

Aisha sent the signed supplier agreement on 12 September and asked for notes on clause 7 by tonight. She will be awake until midnight.

Review clause 7, page 12
Send notes before 00:00

Sources [1] 12 Sep · [2] 21:04 · model nova-sum-3b · on device

07 · Ask NOVAConsent above the answer, sources below it
9:415G

Design Guild

4,214 members · 12 online · Muscat

MapFeedCanon
#announcements12 new
#critique3 new
Beginners circle48 members
Stage · live24 listening

Upcoming

Thu
18:00
Portfolio reviewStage · 90 min · 61 going
Sat
10:00
Design systems 101Event · 2h · 140 going
Canon · curated by Daniel

“Start here: how we critique, how we credit, how we disagree.”

08 · ConstellationThree doors, not thirteen
9:415G
# announcementsDesign Guild · 4.2k subscribers
Pinned · Canon

Critique week starts Monday. Post one unfinished screen — not a portfolio piece.

DG
Design GuildToday · 09:12

Our September archive is live: 312 screens, 41 critique notes, one very good argument about corner radii.

Archive · September 2026
🔥 84👏 61↗ 12
DO
DanielScheduled · 18:00

Stage tonight: bring a flow you are stuck on. 24 seats, cameras optional.

Broadcast to 4.2k
09 · ChannelEditorial calm · scheduled publishing
9:415G

Calls

Live now

Live24 listening
Design Guild · Stage
captions on · host Daniel

Recent

AA
AishaOutgoing · 12:04
20:41
DO
DanielMissed
18:22
M
Mama2 calls · 48 min
Yest
Audio quality on this network: good · HD available
Chat Communities Calls Profile
10 · CallsQuality stated in words before joining
9:415G
AA
Aisha Al-Harthy @aisha · Muscat

“Contracts by day, oud by night.”

Privacy

Phone numberHidden
Last seen & onlineContacts
Read receiptsOn
Profile photoContacts

Security

App lockFace ID
Devices3 active
Safety numbers2 need review
New login · iPhone 15Muscat · 02:14 · not you?
Revoke
11 · Privacy & securitySentence values, inline trust alerts
9:415G
YK
YaraSecret chat
23h

Secret chat · separate keys · no backup · no forwarding

The offer is 12, not 14. Do not reply tonight.
Understood. Deleting this thread at midnight.22:18
Good. I will call from the other number.22:19

Screenshots are still possible. We will tell you if one is taken.

Message · disappears in 24h
12 · Secret chatViolet means “not ordinary” · timer always visible
9:415G

المدار

الكلغير مقروءالعملالعائلة

المدار القريب

ع
عائشة الحارثية٢١:٠٤

العقد_النهائي.pdf · ٣٫٤ ميجابايت

تم التسليممقفل

النشِط

د
دانيال عوكافورأنت: غداً مناسب ✓✓
١٨:١٢
م
مامارسالتان صوتيتان
١٧:٤٠
س
ستوديو الشماليارا: العرض جاهز
١٦:٠٢
المحادثات المجتمعات المكالمات حسابي
13 · RTL mirrorStructural mirroring, Arabic-Indic numerals, +2pt leading

07 · Motion

Orbital: it arrives along a curve, and never bounces twice.

Springs are specified as response/damping pairs so SwiftUI and Compose produce the same feel. Nothing exceeds 420ms; feedback is capped at 180ms. Every transition has a reduced-motion counterpart.

Send · spring 0.32 / 0.78 · 320ms
Clause 7 is fine by me.
Sheet · spring 0.36 / 0.84 · 340ms

Ask NOVA
Summarise · on this device

Reaction · spring 0.28 / 0.62 · 260ms
Good. I will call from the other number.
❤️
InteractionSpring / curveDurationNote
Receive messagespring .34 / .82340msTranslate 12→0, fade in
Open conversationspring .38 / .86380msShared avatar and name
Tab switchease-out220ms4pt slide, no scale
Long-press menuspring .30 / .80200msBlur 0→12, row dims to 92%
AI shimmerlinear loop1.6sStops instantly on completion
Reduce motioncross-fade120–160msPosition changes instantly

08 · Handoff

What needs your decision.

No production code has been written. These are the six decisions that unlock the build, followed by the design QA gate that every future screen must pass.

Decisions

  1. Launch scope. Confirm the P0 set; calls ship in phase 5, channel analytics move to P1.
  2. Gravity. Explainable ordering, or strict recency at launch?
  3. AI. On-device first with an opt-in attested cloud path, or local only for v1?
  4. Communities. Stages in P1 rather than launch, to protect the 22-week plan.
  5. Recovery. Accept that losing all devices without social recovery means losing history.
  6. Brand. Approve the star, the gradient icon and the typographic voice.

Design QA gate

  • Every spacing value comes from the 4pt scale
  • Continuous corners, 60% smoothing, no mixed radii
  • One accent action per viewport; violet only for AI or vault
  • Twelve states designed for every component
  • 310% type with no clipping on all screens
  • Light theme at 4.5:1 body contrast
  • RTL mirror reviewed against LTR at 100%
  • Reduced-motion variant for every transition
  • No emoji as iconography, no stock people, no text shadows