Releases: god-s-perfect-idiot/metro-os
Release list
alpha-6
metro-os alpha-6
Since: alpha-5
Tag: alpha-6 (8eaed62)
The shell gains WP8.1 toast banners and a volume HUD as standalone overlay apps, Music lands as an Xbox Music–style player, and Start tiles pick up charging/download progress plus live people mosaics.
Highlights
- Notifications (toasts) — New Tier 0 overlay: high-importance notifications raise a Metro toast banner instead of Android heads-up.
- Volume HUD — New Tier 0 overlay: hardware rockers show the charcoal WP8.1 volume strip (ringer / media / in-call).
- Music — New Tier 1 Xbox Music–style player: local MediaStore library plus YouTube Music connect/playback.
- Start tile progress — Pinned tiles show charging and download progress overlays, including custom RemoteViews (e.g. charging monitors).
- Settings applications — Root
system|applicationspivot with per-app detail, background/notification toggles, and uninstall.
Notifications
- New complete shell app: toast overlay only (tray / Action Center stay in statusbar)
- Accent banner with app logo + one line; tile-flip enter/exit; swipe right to dismiss; tap to open
- Setup from Settings → notifications (master toggle, timeout ListPicker, test toast)
- Suppresses AOSP heads-up while the overlay is running
Volume
- New complete shell app: collapsed charcoal strip + expanded dual sliders
- Accessibility key filter consumes Volume Up/Down so the stock HUD does not appear
- Setup from Settings → volume (master toggle)
Music
- New complete app: panorama hub, collection pivots, now playing, local + YouTube Music
- Background playback via Media3
Launcher / Start
- Progress-bar notifications overlay a rectangular bar on pinned tiles (charging remaining, downloads)
- Custom RemoteViews parsed when extras are empty (e.g. Bolt.Earth-style charging UIs)
- People photo-grid tiles rotate contact mosaics with live flip
- App list: letter-marker animations in search, haptic on long-press context menu
Settings / Keyboard / Photos
- Applications list of launchable user + system apps; in-Settings detail (open / uninstall)
- Keyboard key spacing unified (equal row/column gaps)
- Photos: shared loading/empty collection state
Downloads
Debug APKs for all complete apps in this release:
| App | Artifact |
|---|---|
| Launcher | launcher-debug.apk |
| Status bar | statusbar-debug.apk |
| Notifications | notifications-debug.apk |
| Navigation bar | navbar-debug.apk |
| Volume | volume-debug.apk |
| Photos | photos-debug.apk |
| Calendar | calendar-debug.apk |
| Messaging | messaging-debug.apk |
| People | people-debug.apk |
| Phone (Dialer) | dialer-debug.apk |
| Settings | settings-debug.apk |
| Calculator | calculator-debug.apk |
| Files | files-debug.apk |
| Keyboard | keyboard-debug.apk |
| Music | music-debug.apk |
Install shell first (launcher, statusbar, notifications, navbar, volume), then consumer apps. Enable Notifications (overlay + accessibility + notification access) and Volume (overlay + accessibility) after install.
For testers
- Install shell + apps (include new Notifications, Volume, Music).
- Notifications: grant overlay, accessibility, and notification access; Settings → notifications → turn on Show notifications; post a high-importance notification or use show test toast — Metro banner, not Android heads-up.
- Volume: grant overlay + accessibility; Settings → volume → turn on Show volume controls; press rockers — charcoal HUD, not the stock Android panel.
- Start: pin an app that shows charging/download progress; confirm the tile bar (and remaining-time peek) rather than an unread
1badge. - Settings → applications → open an app’s detail; toggle notifications/background; uninstall a user app.
- Music: scan local files; play from hub; optionally connect YouTube Music.
Stats
Commits since alpha-5 |
8 |
| Complete apps built | 15 |
Compare: alpha-5...alpha-6
alpha-5
metro-os alpha-5
Since: alpha-4
Tag: alpha-5 (fe4c3a3)
Keyboard joins the suite as a WP8.1-style system IME, Dialer gets proper incoming/ongoing call notifications with proximity-aware in-call UI, and the shell status tray / navigation overlay behavior is tightened for 3-button mode.
Highlights
- Keyboard (IME) — New Tier 0 Metro Keyboard (FlorisBoard fork) with WP8.1 themes and Metro settings; linked from system Settings.
- Dialer call UX — Incoming full-screen intent when locked/off, direct open when unlocked; ongoing call notifications; proximity sensor blanks the screen at the ear.
- Status tray polish — Tap / home reveal with staggered icon drop-in; 5s auto-collapse; nav overlay only in 3-button mode.
- Typography — Launcher tile text roles and fuller Noto Sans weight set across the UI toolkit.
- MetroListPicker — Shared WP8.1-style list picker used in Keyboard settings (replacing Material-ish dropdowns).
Keyboard
- New complete app: touch IME + Metro settings shell
- WP8.1 dark/light themes; branding as Metro Keyboard
- Settings entry from system Settings; list pickers via toolkit
Dialer
- Incoming / active call notifications and ringtone handling
- Full-screen intent when needed; skip heads-up when unlocked
- Proximity-driven screen-off during calls; in-call UI polish
Shell (statusbar / navbar)
- Status tray expand timing and icon stagger
- System navigation mode detection; overlay gated to 3-button nav
Launcher / Settings / Toolkits
- TileText / typography updates on Start
- Theme settings simplified (removed FOLLOW_TIME / sunrise–sunset prefs)
metro-ui-android: MetroListPicker, MetroMessageDialog, toggle + font updates
Downloads
Debug APKs for all complete apps in this release:
| App | Artifact |
|---|---|
| Launcher | launcher-debug.apk |
| Status bar | statusbar-debug.apk |
| Navigation bar | navbar-debug.apk |
| Photos | photos-debug.apk |
| Calendar | calendar-debug.apk |
| Messaging | messaging-debug.apk |
| People | people-debug.apk |
| Phone (Dialer) | dialer-debug.apk |
| Settings | settings-debug.apk |
| Calculator | calculator-debug.apk |
| Files | files-debug.apk |
| Keyboard | keyboard-debug.apk |
Install shell first (launcher, statusbar, navbar), then consumer apps. Enable Keyboard as the system IME after install.
For testers
- Install shell + apps (include new Keyboard); set Keyboard as default IME and type in a few apps.
- Dialer: incoming call on lock screen → full-screen UI; unlocked → opens InCall directly; hold to ear → screen blanks.
- Status tray: tap / go home → indicators drop in; wait ~5s → collapse; confirm nav overlay only with 3-button nav.
- Settings → Keyboard opens Metro Keyboard settings; list pickers look Metro (not Material dropdowns).
Stats
Commits since alpha-4 |
12 |
| Complete apps built | 12 |
Compare: alpha-4...alpha-5
alpha-4
metro-os alpha-4
Since: alpha-3
Tag: alpha-4 (cdda6ff)
Files joins the suite as a WP8.1-style file browser, Start gets Xbox Music–style now-playing tiles plus custom branding and richer notification peeks for third-party apps, and Dialer can pin speed-dial contacts to Start.
Highlights
- Files app — Browse and open storage with Metro list chrome; new suite member in the APK set.
- Music now-playing tiles — Pinned music tiles show album art and transport controls from active media sessions (Xbox Music–style).
- Custom tile branding — Branded Start/app-list faces for select third-party apps (e.g. Google, YouTube Music, WhatsApp, Camera, Chrome).
- Richer tile peeks — Notification back-face subtitle support; Gmail-style mail peek (sender / subject / content).
- Speed dial → Start — Pin contacts / speed dials from Dialer onto the Start screen.
Files
- New complete app: browse, open, and manage files with Metro UI
- Permission gate and file-type pivots / icons
Launcher / Start
- Music now-playing live tiles (1×1, 2×2, 4×2) with play/pause
- Custom tile faces and branding for selected third-party apps
- Mail notification peek and notification merge improvements
- Tile grid / corner-button layout consistency in edit mode
Dialer
- Speed dial pin-to-Start via launcher receiver
- Context menus for adding / pinning speed dials
People / Shell / Toolkits
- People tile and pin-related wiring updates
- Navbar / status bar theme receiver polish
metro-ui-androidtypography and list subtitle sizing; tile / theme tweaksmetro-system-sdkintent / preferences updates for cross-app flows
Downloads
Debug APKs for all complete apps in this release:
| App | Artifact |
|---|---|
| Launcher | launcher-debug.apk |
| Status bar | statusbar-debug.apk |
| Navigation bar | navbar-debug.apk |
| Photos | photos-debug.apk |
| Calendar | calendar-debug.apk |
| Messaging | messaging-debug.apk |
| People | people-debug.apk |
| Phone (Dialer) | dialer-debug.apk |
| Settings | settings-debug.apk |
| Calculator | calculator-debug.apk |
| Files | files-debug.apk |
Install shell first (launcher, statusbar, navbar), then the consumer apps.
For testers
- Install shell + apps (include new Files).
- Files: grant storage permission; browse folders and open a few file types.
- Start: pin a music app tile; play audio — confirm art + play/pause on the tile.
- Start: pin Google / YouTube Music / WhatsApp / Camera / Chrome — check branded faces.
- Enable notification listener; send a Gmail-style notification — confirm peek content.
- Dialer: add/pin a speed dial to Start; confirm the tile launches correctly.
Stats
Commits since alpha-3 |
5 |
| Files changed | ~120 |
| Complete apps built | 11 |
Compare: alpha-3...alpha-4
alpha-3
metro-os alpha-3
Since: alpha-2
Tag: alpha-3 (4867bad)
Settings enters the suite as a real WP8.1 system app, Start tiles can be dragged to reorder, Dialer gains incoming-call and SMS reply flows, and shared typography/controls get closer to the Metro chrome.
Highlights
- Settings app — System theme, 20-color accent palette, ease-of-access / text size, and suite-wide theme broadcast so accent and theme changes apply across apps.
- Start tile drag-reorder — Drag pinned tiles with magnet reflow; order persists on drop.
- App-list shortcuts — Long-press an app to open launchable shortcuts from the context menu.
- Dialer incoming call + SMS — Incoming call UI (answer / ignore / reply with text); send SMS from Dialer.
- Metro chrome polish — App Title typography role, WP8.1-style slider thumb/track, Settings icon refresh, Dialer
MetroAppTitlebranding.
Settings
- WP8.1-style settings hierarchy
- Accent color picker (official 20-color palette)
- Ease of access / text size
- Theme changes broadcast across the suite
Launcher / Start
- Drag-to-reorder pinned tiles with magnet reflow
- Grid position persistence and compaction
- App-list long-press shortcuts (
AppLauncherOptions) - Settings launcher icon / branding updates
Dialer
- Incoming call screen (answer, ignore, text reply)
- Send message from Dialer
MetroAppTitlebranding on the shell
Toolkit (metro-ui-android)
- App Title typography role (Medium weight)
MetroSliderrectangular thumb/track to match UX language- Related UX / typography doc updates
Downloads
Debug APKs for all complete apps in this release:
| App | Artifact |
|---|---|
| Launcher | launcher-debug.apk |
| Status bar | statusbar-debug.apk |
| Navigation bar | navbar-debug.apk |
| Photos | photos-debug.apk |
| Calendar | calendar-debug.apk |
| Messaging | messaging-debug.apk |
| People | people-debug.apk |
| Phone (Dialer) | dialer-debug.apk |
| Settings | settings-debug.apk |
| Calculator | calculator-debug.apk |
Install shell first (launcher, statusbar, navbar), then the consumer apps.
For testers
- Install shell + apps from the assets below (include new Settings).
- Open Settings: change accent and theme; confirm other apps pick up the change.
- Start: enter edit mode, drag tiles to reorder, drop and relaunch — order should stick.
- App list: long-press an app that exposes shortcuts; confirm options appear and launch.
- Dialer: simulate/receive an incoming call — answer, ignore, and reply-with-text paths.
- Spot-check App Title chrome on Dialer and Settings icon on Start / app list.
Stats
Commits since alpha-2 |
7 |
| Files changed | ~122 |
| Complete apps built | 10 |
Compare: alpha-2...alpha-3
alpha-2
metro-os alpha-2
Since: alpha-1
Tag: alpha-2 (a4c85bd)
Start screen polish, messaging as a real SMS app, shared WP8.1 controls, and tighter visual fidelity across the shell and Tier 2 apps.
Highlights
- App list jump list & search — Tap a letter marker to open the WP8.1-style jump list (with staggered entrance animation); search highlights matches more clearly.
- Live tiles — Notification listener drives tile peeks; Messaging publishes unread counts/labels so the Messaging tile updates live.
- Photos Start tile — Photo grid tile uses a Ken Burns–style pan/crossfade between images.
- Messaging overhaul — Stronger SMS merging, conversation chrome, composer UX, and soft-keyboard handling so threads stay usable while typing.
- Photos viewer zoom — Pinch/pan zoom with thumbnail caching for smoother browsing.
- Calculator — Rotate to landscape for scientific mode; calculations persist across orientation changes.
- Permission loading — Calendar, Dialer, Messaging, People, and Photos show a Metro loading screen while permission state is resolved (no permission-UI flash).
- Shared UI toolkit — New
MetroJumpList,MetroLoadingScreen, andMetroBorderButton, plus standardized 12dp content margins across apps.
Launcher / Start
- Find-by-letter jump list and refined app search
- Animated context menus on long-press
- Live-tile notification peeks (opt-in notification access prompt)
- Messaging unread live tile + updated system app icons (Phone, Photos, Calculator, People, Messaging)
- Wider tiles can wrap titles; notification peek text layout improved
- Pinned tiles filter uninstalled packages; legacy placeholders migrate to shipped metro apps
- Async loading of pinned tiles for snappier Start
- Tile grid interaction polish
Messaging
- Live tile provider with unread count/label refresh
- Better SMS provider merge (fewer duplicates; local overlays cleaned up after persist)
- Conversation bubbles, composer, and new-message flow polished
- Loading states while fetching threads/messages and while checking permissions
- Contact name lookup improvements
- Unread icon assets for app + tile
Photos
- Pinch-to-zoom / pan in the viewer
- Thumbnail cache to cut redundant decode work
- Collection panes and permission UI aligned to the new margin standard
- Loading screen during permission checks
Calculator
- Portrait = standard, landscape = scientific
- State retained across rotation
Calendar / Dialer / People
- Calendar view-type picker and shell polish
- Dialer / People / Calendar / Photos / Messaging permission screens updated with loading gate
- People uses shared jump list (local overlay removed)
- People launcher icon refreshed (bitmap asset)
Shell & branding
- Status bar / navbar icon and chrome tweaks
- Centralized app branding in
metro-system-sdk(MetroAppBranding) - Design docs: list content margin 24dp → 12dp
Toolkit (metro-ui-android)
MetroJumpList+ logic/tests (diagonal stagger, instant section jump)MetroLoadingScreenMetroBorderButton- Shared dimens for screen/list margins
- Letter tile sizing and transition helpers
Downloads
Debug APKs for all complete apps in this release:
| App | Artifact |
|---|---|
| Launcher | launcher-debug.apk |
| Status bar | statusbar-debug.apk |
| Navigation bar | navbar-debug.apk |
| Photos | photos-debug.apk |
| Calendar | calendar-debug.apk |
| Messaging | messaging-debug.apk |
| People | people-debug.apk |
| Phone (Dialer) | dialer-debug.apk |
| Calculator | calculator-debug.apk |
Install shell first (launcher, statusbar, navbar), then the consumer apps.
For testers
- Install shell + updated apps from the assets below.
- Grant launcher notification access to see live-tile peeks.
- Set Messaging as the default SMS app; send/receive and confirm the Start tile unread state.
- App list: search, letter jump list, pin/unpin, edit-mode corners.
- Photos: open a photo and pinch-zoom; confirm Start photo tile animates.
- Calculator: rotate device and confirm mode switch + retained expression.
- Cold-start Calendar / Dialer / Messaging / People / Photos and confirm a loading screen appears before permission UI (no flash).
- Spot-check list screens for the tighter 12dp side margins.
Stats
Commits since alpha-1 |
10 |
| Files changed | ~180 |
| Complete apps built | 9 |
Compare: alpha-1...alpha-2
alpha-1
metro-os — Alpha 1
First installable slice of metro-os: a Windows Phone 8.1–style shell on Android, plus a first wave of consumer apps.
Goal: 1:1 WP8.1 Metro UX — not Material, not “inspired by.” Shared accent/theme via toolkits; portrait phone only.
Build: 2026-07-18 · 9/9 debug APKs passed · artifacts in deploy/apks/
What’s in Alpha 1
| App | Package | Tier | Status | Artifact |
|---|---|---|---|---|
| Launcher | com.metro.launcher |
0 — Shell | Core flows live | launcher-debug.apk |
| Status bar | com.metro.statusbar |
0 — Shell | Implemented | statusbar-debug.apk |
| Navigation bar | com.metro.navbar |
0 — Shell | Scaffolded / usable | navbar-debug.apk |
| Photos | com.metro.photos |
2 | Implemented | photos-debug.apk |
| Calendar | com.metro.calendar |
2 | Implemented | calendar-debug.apk |
| Messaging | com.metro.messaging |
2 | Implemented (SMS seam + demo) | messaging-debug.apk |
| People | com.metro.people |
2 | Hub v1 | people-debug.apk |
| Phone | com.metro.dialer |
2 | Phone v1 | dialer-debug.apk |
| Calculator | com.metro.calculator |
2 | Implemented | calculator-debug.apk |
Each APK is ~8.6–8.9 MB (debug).
Install
# Shell (Tier 0)
./scripts/install-shell.sh
# Or sideload from the suite collection
adb install -r deploy/apks/launcher-debug.apk
adb install -r deploy/apks/statusbar-debug.apk
adb install -r deploy/apks/navbar-debug.apk
adb install -r deploy/apks/photos-debug.apk
adb install -r deploy/apks/calendar-debug.apk
adb install -r deploy/apks/messaging-debug.apk
adb install -r deploy/apks/people-debug.apk
adb install -r deploy/apks/dialer-debug.apk
adb install -r deploy/apks/calculator-debug.apk