Light mode: textLink is 3.23:1 on white, below the AA floor the design system sets
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 72/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Domain
- accessibility
Research direction
Read .specify/DESIGN_SYSTEM.md §11, then inspect lib/features/chat/widgets/info_panels.dart:284 and the light-mode color definition. Check test/core/*_contrast_test.dart and identify which light-mode goldens cover the affected UI. Done means the text link meets the stated contrast requirement, the unused navigation color is fixed or removed, and the relevant contrast tests and goldens pass.
Written by the indexing model from the issue text.
Description
Found while documenting the palette in #538 (CodeRabbit flagged it there; the numbers check out). Pre-existing, not introduced by that PR, and the fix is code plus goldens, so it does not belong in a docs-only change.
The gap
.specify/DESIGN_SYSTEM.md §11 requires 4.5:1 for text and 3:1 for interactive elements. Light mode misses both in two places:
| Token | Value | On | Ratio | Needs |
|---|---|---|---|---|
AppColors.light.textLink |
#6A9E00 |
#FFFFFF |
3.23:1 | 4.5:1 |
bottomNavigationBarTheme.selectedItemColor (= mostroGreen) |
#92D64F |
#FFFFFF |
1.76:1 | 3:1 |
Dark mode is fine: #6A9E00 is 5.03:1 and #92D64F is 9.24:1 on #1A2030.
What each one actually costs
textLink has exactly one caller: lib/features/chat/widgets/info_panels.dart:284, the copyable value in a chat info panel, at bodySmall. So it is small text at 3.23:1 — a real miss, on one widget.
The nav colour costs nothing today: BottomNavigationBar is not used anywhere in lib/, the redesign shell has its own navigation, and that ThemeData entry is dead configuration. Worth fixing or deleting so it cannot be adopted as-is later — deleting is probably the honest option.
Suggested fix
#4F7A00 is 5.1:1 on white (and it is only used on light surfaces, so its 3.18:1 on the dark surface does not apply — light mode reads this token, dark mode has its own).
Needs a check of which light-mode goldens move, and test/core/*_contrast_test.dart is the place to make it stick: none of those files covers AppColors.textLink today, which is why this survived.
- Dominant language
- Dart
- Stars
- 11
- Forks
- 9
- Avg merge
- 13h 4m
- Merged PRs (30d)
- 259
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from MostroP2P/app
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 1 day
-
Add-invoice screen stays on "Sent, waiting for the node" after a late acceptance on a sell orderOpenbug priority: medium
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 85/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
MostroP2P/app#341 · 1 comment ·
Maintainers usually reply within 1 day
-
CONTRIBUTING.md: Protocol/Transport section still says peer and dispute chat use NIP-59 gift wrapOpen
Difficulty 1/5 Under an hour Newbie friendliness 90/100
Maintainers usually reply within 1 day
Similar issues
-
DOCS UPDATE: README.md and BACKEND.md reference a search-meetings edge function that does not existOpendocumentation
Difficulty 1/5 1-3 hours Newbie friendliness 93/100
AOSSIE-Org/Ell-ena#337 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 66/100
Maintainers usually reply within 1 day
-
cat: puzzle
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
lichess-org/mobile#3826 ·
Maintainers usually reply within 2 days
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
saber-notes/saber#1844 ·
-
area-clientside-dartpad
Difficulty 1/5 Under an hour Newbie friendliness 64/100
Maintainers usually reply within 2 days