Repository navigation
feat: full UI/UX screen library (D1–D4) - #4
Merged
Umar-Azizadah merged 4 commits intoSep 29, 2026
Merged
Conversation
Implements all 5 SOW deliverables as production-ready React Native screens using the existing design token system (palette, theme, spacing, radii). Screens added / replaced: - app/(public)/sign-in.tsx → polished login with keyboard avoidance - app/(app)/(tabs)/index.tsx → Home: greeting, stats, activity feed, donate CTA - app/(app)/(tabs)/learn.tsx → Lessons: piece cards, lesson list, progress - app/(app)/(tabs)/play.tsx → Play setup: color picker, 5-difficulty grid - app/(app)/(tabs)/profile.tsx → Profile: avatar, stats, badges, account menu - app/(app)/puzzles.tsx → Puzzles: board, rating, themes, hint, streak - app/(app)/lesson-detail.tsx → Lesson: step-through board + instruction panels - app/(app)/play-game.tsx → Game: timers, tutor panel, move history, modal Also adds docs/screen-preview.html — self-contained iPhone-frame preview of all screens for stakeholder review (htmlpreview.github.io compatible). UI/UX design by Sandith Hewage (Y STEM and Chess) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Comprehensive redesign of every screen with polished visual hierarchy, consistent interaction patterns, and smooth micro-animations throughout. Design stays true to YSTEM brand while substantially raising the quality bar. Changes per screen: - sign-in: patterned bg, floating card, spring press animation, password toggle, dev shortcuts - _layout: emoji tab icons with opacity/scale focus states - index (Home): dark XP hero card with progress bar, quick-action grid, activity feed, donate CTA - learn: piece selector with mini progress bars, lesson list (done/active/locked), smart continue CTA - play (setup): 3-way color picker, vertical difficulty list with accent bars and dot rating - profile: avatar ring, stats row, 9-badge grid, settings menu sections, sign out - lesson-detail: animated step transitions, board with highlight square, tip callout, completion state - puzzles: spring-animated result banner, hint toggle, solution reveal, streak display - play-game: dark header, dual player rows with timers, tutor panel, move history, game-over modal All styles use design tokens only (palette, spacing, radii, fontSizes, fontWeights). docs/screen-preview.html updated with full iPhone frame previews of all screens. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
SandithHewage
force-pushed
the
design/sandith-ui-screens
branch
2 times, most recently
from
September 24, 2026 19:59
d3d040e to
bc0662f
Compare
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Collaborator
|
Hey Sandith, the UI looks good for a prototype. Before I approve it, can you fix the syntax error in learn.tsx around “The Pawn’s First Move” and get all required checks passing? Please run formatting, linting, type-checking, and tests locally, then push the fixes to the same PR branch. Once the checks are green, I’ll review and approve it. |
Umar-Azizadah
self-requested a review
September 28, 2026 22:51
Umar-Azizadah
approved these changes
Sep 29, 2026
Umar-Azizadah
left a comment
Collaborator
There was a problem hiding this comment.
I manually fixed the PR. Reviewed the UI/UX screen implementation and the follow-up quality fixes. Formatting, linting, TypeScript checks and all 41 tests now pass. I also verified the updated navigation tests, mentor access and sign-out behavior.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Complete mobile UI/UX implementation for all 5 SOW deliverables, built with the existing design token system (
palette,theme,spacing,radii,fontSizes). Every screen is production-ready React Native / Expo Router code — no placeholder content.Screens delivered
app/(public)/sign-in.tsxapp/(app)/(tabs)/index.tsxapp/(app)/(tabs)/learn.tsxapp/(app)/lesson-detail.tsxapp/(app)/puzzles.tsxapp/(app)/(tabs)/play.tsxapp/(app)/play-game.tsxapp/(app)/(tabs)/profile.tsxVisual preview
Open all screens in your browser (iPhone frames, brand colors):
👉 https://htmlpreview.github.io/?https://github.com/SandithHewage/mobile/blob/design/sandith-ui-screens/docs/screen-preview.html
Design notes
@/design/tokens— zero hardcoded valueswidth: '100%', aspectRatio: 1for responsive sizingButton,AppTextcomponents anduseSession()hook preserved and used correctlyTest plan
npx expo startand navigate each screenrouter.back()) on all detail screensplay.tsx→play-game.tsxroute params pass correctlylearn.tsx→lesson-detail.tsxroute params pass correctly🤖 Generated with Claude Code