feat(apps): render /apps as an Android home-screen launcher on phones#6
Merged
Merged
Conversation
Below a clear 600px breakpoint the Apps view becomes a genuine Android launcher: a full-bleed, fixed violet→magenta ambient wallpaper, four even full-width columns of big rounded (squircle) app icons floating with soft drop shadows, labels beneath, the grid flowing from the top, and a decorative bottom home-indicator pill. Above the breakpoint the tidy centered desktop icon grid stands unchanged — the switch is crisp. Landing is now width-aware: a phone visitor to `/` lands ON the launcher (the "just like your home screen" promise), a desktop visitor on the curated store. `?view=store|apps` and a filter query (`?q=`/`?category=`) override the default so both surfaces stay deep-linkable and the Store pill stays reachable from the launcher. `/apps` is always the launcher; `/app/<slug>` and not-found are unaffected. AppIcon (CRITICAL/reused across store + detail) is untouched — the launcher re-skins it via CSS only. The wallpaper + home-indicator are decorative (aria-hidden); labels keep WCAG AA contrast in dark + light. This is what the dig-chrome-extension Apps tab embeds in its popup (#59): the popup renders as a phone launcher at ~360–414px. Refs #51.
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.
Apps → Android home-screen launcher (#51, extension popup #59)
The mobile Apps view now reads as a genuine Android launcher, and on phones it is the default landing — a phone visitor to explore.dig.net lands on the launcher (the "just like the home screen on your phone" promise), not the store.
What changed
/apps(and the phone landing/) render as a real home screen: a full-bleed, fixed violet→magenta ambient wallpaper, four even full-width columns of big rounded squircle icons floating with soft drop shadows, labels beneath, the grid flowing from the top, and a decorative bottom home-indicator pill. Above 600px the tidy centered desktop icon grid stands unchanged — the switch is crisp, not a gradual reflow./on a phone (≤600px) defaults to the launcher; on desktop it defaults to the curated store.?view=store|appsand a filter query (?q=/?category=) override the default, so both surfaces stay deep-linkable and the Store pill stays reachable from the launcher on a phone./appsis always the launcher;/app/<slug>+ not-found are unaffected. (Body is client-rendered → correct surface paints on first render, no flash.)AppIconis CRITICAL/reused across the store cards, featured carousel, and detail page — the launcher re-skins it via CSS only (never its API), per §2.0.useLauncherViewporthook (mirrorsuseReducedMotion);ViewTabsgains astoreHrefprop; wallpaper + home-indicator are decorative (aria-hidden).Breakpoint
600px — ≤600 = phone launcher, >600 = desktop store/grid.
Blast radius (gitnexus, upstream)
AppTile— LOW, 0 upstream callers (onlyAppsHomeScreen).AppsHomeScreen— LOW, 0 upstream (only the/apps+/routes).AppIcon— CRITICAL, reused byAppCard/FeaturedSlide/AppDetailPage/AppTileacross 7 flows → not modified; re-skinned via CSS descendant selectors only.App— routing gained the width-aware home surface; store view preserved. Change scoped to these.Verification (this session)
@axe-core/playwrightWCAG 2.2 AA 0 violations on/appsin dark AND light, desktop AND mobile; launcher stays keyboard-operable + SR-sane;prefers-reduced-motionrespected.Screenshots (mobile launcher)
/→ launcherDesktop stays the store/grid above the breakpoint:
/appsdesktop ·/desktop → storeVersion
minor
0.3.1 → 0.4.0— notable additive visual/UX capability (new launcher presentation + width-aware landing), no breaking change.Refs #51. Extension popup embed: #59.