Every screen (welcome.tsx, create.tsx, import.tsx, home.tsx) inlines the same hardcoded hex colors (#0f172a, #3b82f6, etc.) per-file with no shared theme module, and every fontSize is a fixed number with no respect for the OS's Dynamic Type (iOS) / font scale (Android) accessibility settings — meaning a low-vision user who has increased their system text size site-wide gets no benefit in this app at all.
Definition of done:
- Centralized theme/token module consumed by all screens, replacing inline hex literals
- Text respects
allowFontScaling (React Native's default) rather than any explicit allowFontScaling={false} override, verified none exist and none get added
- Manually verified layouts don't break/clip at 200% OS text scale
Before opening a PR for this issue, read CONTRIBUTING.md.
This is not a starter-issue. The Definition of done above is the full
acceptance criteria, not a subset to sample from — a PR that addresses part
of it is an unfinished issue, not a smaller one. Your PR must include, in
the PR description itself:
PRs missing these will be sent back before review, not reviewed and rejected — please do this up front.
Every screen (
welcome.tsx,create.tsx,import.tsx,home.tsx) inlines the same hardcoded hex colors (#0f172a,#3b82f6, etc.) per-file with no shared theme module, and everyfontSizeis a fixed number with no respect for the OS's Dynamic Type (iOS) / font scale (Android) accessibility settings — meaning a low-vision user who has increased their system text size site-wide gets no benefit in this app at all.Definition of done:
allowFontScaling(React Native's default) rather than any explicitallowFontScaling={false}override, verified none exist and none get addedBefore opening a PR for this issue, read CONTRIBUTING.md.
This is not a starter-issue. The Definition of done above is the full
acceptance criteria, not a subset to sample from — a PR that addresses part
of it is an unfinished issue, not a smaller one. Your PR must include, in
the PR description itself:
PRs missing these will be sent back before review, not reviewed and rejected — please do this up front.