Files

76 lines
2.6 KiB
Markdown

# 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