# App Project Map This is a handoff snapshot, not the product SSOT. Product SSOT: mall-docs report-notebooklm docs, snapshot date: 2026-06-03. ## Entry Points | Path | Purpose | |---|---| | `lib/main.dart` | Creates `RnbApiDataSource` and starts the App. | | `lib/app.dart` | Defines `MaterialApp`, app title, theme, and shell page. | | `lib/features/shell_page.dart` | Owns bottom navigation and mini-player state. | ## Data Layer | Path | Purpose | |---|---| | `lib/data/api/report_data_source.dart` | API client interface and HTTP implementation. | | `lib/data/models/models.dart` | Data models, JSON parsing helpers, and formatting helpers. | The data source currently performs GET requests only. Mutating APIs for auth, favorites, playback progress, and outbound events are not implemented. ## Feature Pages | Path | Purpose | |---|---| | `lib/features/feed/feed_page.dart` | Recommended feed. | | `lib/features/reports/reports_page.dart` | Report list and simple filters. | | `lib/features/institutions/institutions_page.dart` | Institution list. | | `lib/features/institutions/institution_detail_page.dart` | Institution detail and recent reports. | | `lib/features/listen/listen_page.dart` | Listen list. | | `lib/features/profile/profile_page.dart` | Guest/login placeholder and personal-state entries. | | `lib/features/detail/report_detail_page.dart` | Report detail shell and source/compliance display. | | `lib/features/detail/modules/renderer_registry.dart` | Module card rendering and module detail page rendering. | | `lib/features/shared/report_card_widget.dart` | Shared report card. | ## Shared UI | Path | Purpose | |---|---| | `lib/widgets/app_buttons.dart` | Buttons. | | `lib/widgets/app_card.dart` | Cards. | | `lib/widgets/badges.dart` | Badges and chips. | | `lib/widgets/mini_player.dart` | Mini-player and placeholder player UI. | | `lib/widgets/sheets.dart` | Login/outbound sheets and toasts. | | `lib/widgets/states.dart` | Loading, skeleton, empty, and error states. | | `lib/theme/app_theme.dart` | Flutter `ThemeData`. | | `lib/theme/wise_tokens.dart` | Color, spacing, radius, motion, and shadow tokens. | ## Platform | Path | Purpose | |---|---| | `android/` | Android scaffold. | | `android/app/src/debug/AndroidManifest.xml` | Debug-only cleartext allowance. | | `android/app/src/main/AndroidManifest.xml` | Main manifest; release should remain HTTPS-only. | | `web/` | Flutter web scaffold. | ## Tests | Path | Purpose | |---|---| | `test/widget_test.dart` | Smoke widget test with fake data source. | ## Generated or Local Files Do not commit: - `build/` - `.dart_tool/` - APKs - screenshots - local IDE caches - local environment files