Skip to content

Add generic Android pages and full-stack-for-everyone docs - #4

Merged
sunquakes merged 10 commits into
mainfrom
develop
Oct 2, 2026
Merged

sunquakes merged 10 commits into
mainfrom
develop

Conversation

@sunquakes

Copy link
Copy Markdown
Owner

What

  • Add generic Android pages: dashboard home, search, notifications (with detail) and settings, wired into a four-tab bottom navigation
  • Remove the placeholder profile module (absorbed by settings)
  • Document each screen and the API-backed vs local data modes in apps/android/AGENTS.md
  • Add the "everyone can become a full-stack engineer" message to both READMEs and the manual/AI intro docs, in English and Chinese

Why

Provide a reusable, non-album-specific Android app shell and make the product mission explicit: one person can ship across every platform.

Verification

  • ./gradlew.bat assembleDebug -> BUILD SUCCESSFUL (445 tasks)
  • app-debug.apk generated

- Rewrite home as a dashboard: greeting, banner pager, stat cards, quick
  actions and recent activity
- Add search feature with hot tags, history and result states
- Add notifications feature with filter tabs, unread indicators and
  pushed detail screen
- Add settings feature replacing profile: account, theme, switches,
  cache, about and logout
- Wire four-tab bottom navigation and remove the profile module
- Document API-backed vs local data modes and a per-page screen
  catalog in apps/android/AGENTS.md
- Add the full-stack-for-everyone message to both READMEs
- Add matching callouts to the manual and AI intro docs
- Keep English and Chinese content in sync
- Move AppNotification and SearchResultItem models to core:model

- Add NotificationsRepository and SearchRepository in core:data

- Provide in-memory default implementations bound via Hilt

- Remove sample data and feature-local repository from feature modules
- Replace string routes with serializable Destination objects

- Pass notification id via typed NotificationDetailDestination

- Apply serialization plugin and runtime in feature convention
- Add Result wrapper and Flow asResult extension in core:common

- Add reusable EmptyState and ErrorState components

- Wrap notification and search data with Result state
- Add core:testing with MainDispatcherRule and repository fakes
- Wire test utilities into every feature via convention plugin
- Add Turbine to the version catalog
- Cover Home, Notifications, Search, Settings and Login ViewModels
  with 31 unit tests
- Derive --filter=./<dir> from platforms.json so turbo dev/build scopes workspace packages regardless of package name
- Preserve web-admin's build/ source directory when copying templates
- Enable core.longpaths and surface git failure reasons in mars create
- Make app dependency edits EOL-safe for --android-mode switching
- Document the :core:testing module in the module table
- Describe type-safe @serializable *Destination navigation
- Refresh the screen catalog with destinations
- Mark Android Ready on platform pages and landing page
- Document real feature/core modules and type-safe navigation
- Add local/api variant section to the develop guide
- Replace unrelated troubleshooting rows in AI deploy page
- Sync zh-Hans translations and fix Chinese cli anchors
- Add .gitattributes keeping skill md/sh LF and ps1 CRLF
- Keep .env templates LF so compose parses the first key
- Regenerate skill archive size metadata
@sunquakes
sunquakes merged commit 341b9ef into main Oct 2, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant