Skip to content

docs: update DESIGN_SYSTEM.md with exact v1 visual specs - #8

Merged
grunch merged 3 commits into
mainfrom
docs/design-system-v1-reference
Mar 23, 2026
Merged

docs: update DESIGN_SYSTEM.md with exact v1 visual specs#8
grunch merged 3 commits into
mainfrom
docs/design-system-v1-reference

Conversation

@mostronatorcoder

@mostronatorcoder mostronatorcoder Bot commented Mar 23, 2026

Copy link
Copy Markdown
Contributor

Summary

Completely rewrote DESIGN_SYSTEM.md based on analysis of all 8 v1 screenshots.

Core Principle

v2 must be visually indistinguishable from v1

What's New

Exact Color Palette (from screenshots)

Background:     #1B1E28
Card:           #1E2230
Input:          #252A3A
Brand Green:    #8CC63F
Chat Sent:      #8359C2 (purple)
Chat Received:  #4B6349 (dark green)

Component Specifications

  • Order Cards: Layout, padding (16px), border radius (12px), typography hierarchy
  • Buttons: Primary/Secondary/Destructive styles with exact colors and sizes
  • Input Fields: Underline style with mostroGreen focus indicator
  • Chat Bubbles: Sent (purple, right-aligned) vs Received (green, left-aligned)
  • Bottom Navigation: 3 tabs, active/inactive colors, 64px height
  • Chips/Badges: Status colors, role colors, sizing

Typography Scale

  • Display (32sp) → Heading (20sp) → Body (16sp) → Caption (12sp)
  • Amount display formatting with flag icons

Layout System

  • Spacing tokens: xs(4) sm(8) md(12) lg(16) xl(24) xxl(32)
  • Responsive breakpoints with shell diagrams
  • Card grid patterns for mobile/tablet/desktop

Quick Reference Card

Copy-paste ready values at the bottom for fast implementation.

For Claude/AI

This document should be read before implementing any UI. It contains:

  1. Exact hex values (not approximations)
  2. ASCII diagrams of component layouts
  3. Pixel-perfect specifications

Goal: Claude can recreate v1 UI without seeing screenshots.

Summary by CodeRabbit

  • Documentation
    • Expanded design system documentation with comprehensive visual guidelines, component specifications, typography standards, and design tokens.
    • Added responsive breakpoint patterns, animation specifications, and accessibility guidelines.
    • Included quick reference cards with copy-paste-ready values for streamlined implementation.

Analyzed all 8 v1 screenshots and documented exact:
- Color palette (hex values from screenshots)
- Typography scale and hierarchy
- Component specifications (order cards, buttons, inputs, chips)
- Chat message bubble design (sent vs received)
- Bottom navigation styling
- Layout and spacing system
- Quick reference card for copy-paste

Key principle: v2 must be visually indistinguishable from v1.

Colors extracted:
- Background: #1B1E28
- Card: #1E2230
- mostroGreen: #8CC63F
- Chat sent: #8359C2 (purple)
- Chat received: #4B6349 (dark green)
@grunch

grunch commented Mar 23, 2026

Copy link
Copy Markdown
Member

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Mar 23, 2026

Copy link
Copy Markdown
Contributor
✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@coderabbitai

coderabbitai Bot commented Mar 23, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 5fa19b2a-c30f-4444-9bba-eb7f3b2e8229

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Walkthrough

The design system documentation is substantially expanded and restructured with a v2 critical directive, complete color palette from v1, detailed component specifications, typography scale, explicit layout tokens, responsive breakpoint diagrams, theme dark/light mappings, and quick reference card. The document transitions from partial guidance to comprehensive design foundations and implementation rules.

Changes

Cohort / File(s) Summary
Design System Documentation
.specify/DESIGN_SYSTEM.md
Expanded from partial design guidance to comprehensive system: added v2 critical directive for visual parity, replaced color section with full v1 palette (backgrounds, brand/action, text states, chat/status/role colors), expanded typography with font families and text scale, added Component Specifications section defining order cards/buttons/inputs/chips/navigation, expanded layout/spacing with explicit tokens and breakpoint rules, added navigation patterns, rewrote responsive breakpoints with shell diagrams, updated iconography/animation/accessibility with concrete specs and libraries, revised theme support with dark/light mappings and implementation rules (ThemeProvider/Riverpod/extensions), appended v1 screenshot reference table and Quick Reference Card with copy-paste token values.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

  • Add dark/light theme #4 — Directly related; both PRs modify theme support sections in the design system with semantic dark/light color mappings and implementation guidance.

Poem

🐰 A warren of colors now organized bright,
From v1's palette, both dark and light!
Components, tokens, and specs all align,
Design systems perfected—how they now shine!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'docs: update DESIGN_SYSTEM.md with exact v1 visual specs' accurately describes the main change—a comprehensive update to the design system documentation with exact visual specifications from v1 screenshots.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/design-system-v1-reference

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🧹 Nitpick comments (4)
.specify/DESIGN_SYSTEM.md (4)

113-113: Add language specifiers to fenced code blocks for markdown compliance.

Multiple fenced code blocks containing ASCII diagrams lack language specifiers, which triggers markdown linting warnings. While these are visual diagrams rather than code, adding a language specifier (e.g., text or ascii) would resolve the linting warnings and improve document compliance.

📋 Example fix for one block
-```
+```text
 ┌─────────────────────────────────────┐
 │  1,500 - 80,000                     │

Also applies to: 127-127, 167-167, 187-187, 202-202, 225-225, 241-241, 263-263, 307-307, 363-363, 505-505

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.specify/DESIGN_SYSTEM.md at line 113, Several fenced code blocks containing
ASCII diagrams use plain ``` backticks without a language specifier; add a
language tag (e.g., text or ascii) to each fenced block to satisfy markdown
linting. Locate every triple-backtick block that contains an ASCII diagram (the
blocks shown in the comment) and change the opening fence from ``` to ```text or
```ascii consistently (apply to the blocks referenced in the review). Ensure
only the opening fence is updated and leave the diagram content unchanged so
rendering and examples remain identical.

172-172: Clarify input field visual style.

The ASCII diagram shows a dropdown arrow (↓) at the end of the input field, but the description calls this an "underline style" input. If this is meant to represent a dropdown/select input rather than a text input, consider clarifying the component type or providing separate specs for text inputs vs. dropdowns.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.specify/DESIGN_SYSTEM.md at line 172, The spec’s ASCII diagram mixes an
underline-style text input with a dropdown arrow (↓), causing ambiguity; update
the DESIGN_SYSTEM.md entry that contains the diagram and the "Underline:
mostroGreen when focused" caption to clearly indicate whether the component is a
text input or a select: either remove the arrow from the underline/text-input
diagram and state "text input (underline style)" for the element, or create a
separate "Select / Dropdown (underline style)" block that includes the
arrow/caret and any focus/hover styles; ensure the labels reference the
component names used elsewhere (e.g., "Underline TextInput" or "Underline
Select") so callers can unambiguously find the spec.

273-273: Specify color tokens for list item icons.

The specification states "colored (green for language, blue for currency)" but doesn't reference which color tokens from the palette should be used. For consistency with semantic naming (section 1.3), specify the exact tokens (e.g., mostroGreen, blueAccent).

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.specify/DESIGN_SYSTEM.md at line 273, Update the icon color description to
reference exact design tokens instead of generic colors: replace "green for
language, blue for currency" with the semantic tokens from section 1.3 (for
example `mostroGreen` for language icons and `blueAccent` for currency icons) or
the correct token names used in the palette; ensure the same token names are
used in related specs (e.g., Icon specs and token list) so `mostroGreen` and
`blueAccent` (or the project’s equivalent token identifiers) are the
authoritative references.

117-117: Clarify which color token for the percentage.

The comment specifies "green %" but doesn't reference which color token from the palette should be used (e.g., mostroGreen or textLink). For consistency with the semantic naming principle (section 1.3), specify the exact token name.

📝 Suggested clarification
-│  Market price: 0.12% above          │  ← bodySmall, textSecondary, green % 
+│  Market price: 0.12% above          │  ← bodySmall, textSecondary, percentage in mostroGreen
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.specify/DESIGN_SYSTEM.md at line 117, Replace the ambiguous "green %" label
with a specific color token from the design palette—update the note that reads
"← bodySmall, textSecondary, green %" to use a semantic token name (for example
"mostroGreen" or "textLink") so it becomes "← bodySmall, textSecondary,
mostroGreen" (or the chosen token); ensure you reference the exact token name
consistently wherever "green %" is used and keep existing typography tokens
bodySmall and textSecondary unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.specify/DESIGN_SYSTEM.md:
- Around line 334-337: The design doc has conflicting bottom-navigation tabs
between Section 6.1 ("Order Book", "My Trades", "Settings") and Section 4.5
("Order Book", "My Trades", "Chat"); update the DESIGN_SYSTEM.md to resolve this
by explicitly stating which tab set is canonical and when each variant is used
(e.g., "Settings" on global screens vs "Chat" in trade-specific contexts), and
update the headings/labels in both Section 6.1 and Section 4.5 (and any related
examples) so they consistently reference the chosen behavior (or document the
conditional logic) to avoid implementer confusion.
- Line 7: The DESIGN_SYSTEM.md references a non-existent directory
`.specify/v1-screenshots/`; fix the broken screenshot link in
.specify/DESIGN_SYSTEM.md by either creating the `.specify/v1-screenshots/`
folder with the original v1 images or updating the reference to the correct
existing screenshots path (e.g., `.specify/v2-screenshots/` or
`.specify/screenshots/`) so the Visual Reference link resolves; adjust only the
path string in the file and ensure the referenced images are present under that
path.
- Line 219: The doc currently lists "Inactive color: textSubtle (`#6C757D`)" but
the defined tokens show textSubtle = `#9A9A9C` and textDisabled = `#6C757D` in
section 2.3; update the entry so it is consistent by either changing the color
value to textSubtle's hex (`#9A9A9C`) or renaming the token to textDisabled to
match the hex `#6C757D`, and ensure the terms "textSubtle" and "textDisabled" are
used exactly as defined in the tokens to avoid confusion.

---

Nitpick comments:
In @.specify/DESIGN_SYSTEM.md:
- Line 113: Several fenced code blocks containing ASCII diagrams use plain ```
backticks without a language specifier; add a language tag (e.g., text or ascii)
to each fenced block to satisfy markdown linting. Locate every triple-backtick
block that contains an ASCII diagram (the blocks shown in the comment) and
change the opening fence from ``` to ```text or ```ascii consistently (apply to
the blocks referenced in the review). Ensure only the opening fence is updated
and leave the diagram content unchanged so rendering and examples remain
identical.
- Line 172: The spec’s ASCII diagram mixes an underline-style text input with a
dropdown arrow (↓), causing ambiguity; update the DESIGN_SYSTEM.md entry that
contains the diagram and the "Underline: mostroGreen when focused" caption to
clearly indicate whether the component is a text input or a select: either
remove the arrow from the underline/text-input diagram and state "text input
(underline style)" for the element, or create a separate "Select / Dropdown
(underline style)" block that includes the arrow/caret and any focus/hover
styles; ensure the labels reference the component names used elsewhere (e.g.,
"Underline TextInput" or "Underline Select") so callers can unambiguously find
the spec.
- Line 273: Update the icon color description to reference exact design tokens
instead of generic colors: replace "green for language, blue for currency" with
the semantic tokens from section 1.3 (for example `mostroGreen` for language
icons and `blueAccent` for currency icons) or the correct token names used in
the palette; ensure the same token names are used in related specs (e.g., Icon
specs and token list) so `mostroGreen` and `blueAccent` (or the project’s
equivalent token identifiers) are the authoritative references.
- Line 117: Replace the ambiguous "green %" label with a specific color token
from the design palette—update the note that reads "← bodySmall, textSecondary,
green %" to use a semantic token name (for example "mostroGreen" or "textLink")
so it becomes "← bodySmall, textSecondary, mostroGreen" (or the chosen token);
ensure you reference the exact token name consistently wherever "green %" is
used and keep existing typography tokens bodySmall and textSecondary unchanged.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 73edb79a-424a-4819-9a03-c7dd5f3b2582

📥 Commits

Reviewing files that changed from the base of the PR and between 5a509d8 and 89dcc76.

📒 Files selected for processing (1)
  • .specify/DESIGN_SYSTEM.md

Comment thread .specify/DESIGN_SYSTEM.md Outdated
Comment thread .specify/DESIGN_SYSTEM.md Outdated
Comment thread .specify/DESIGN_SYSTEM.md Outdated
MostronatorCoder[bot] added 2 commits March 23, 2026 14:24
Added Section 9 - Loading States:
- Skeleton loading with shimmer effect
- ASCII diagram showing loading → loaded transition
- Flutter implementation with shimmer package
- Color specs (baseColor: #1E2230, highlightColor: #2A2D35)
- When to use skeletons vs spinners
- Other loading patterns (buttons, pull-to-refresh, infinite scroll)

Modern UX pattern used by Facebook, Twitter, Slack.
Fixes:
1. Fixed broken screenshot reference - now points to MostroP2P/mobile repo
2. Resolved bottom nav tabs conflict - documented context-dependent tabs
   (Settings on global screens, Chat when inside a trade)
3. Fixed token inconsistency - changed 'textSubtle (#6C757D)' to
   'textDisabled (#6C757D)' to match defined tokens
4. Separated Text Input and Dropdown Select into distinct subsections
   (4.3.1 and 4.3.2) to remove ambiguity with dropdown arrow

Nitpicks addressed:
- Added 'text' language tag to all ASCII diagram code blocks
- Replaced generic 'green/blue' icon colors with semantic tokens
  (mostroGreen, blueAccent)
- Replaced 'green %' with explicit 'mostroGreen for %' token reference
@grunch
grunch merged commit f70dc74 into main Mar 23, 2026
1 check passed
@grunch
grunch deleted the docs/design-system-v1-reference branch March 23, 2026 14:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant