learn and share notes on atproto (wip) 馃 malfestio.stormlightlabs.org/
readability solid axum atproto srs
at main 65 lines 3.4 kB view raw view rendered
1# Information Architecture 2 3This document defines the application structure, navigation, and data model mapping for Milestone A. 4 5## Site Map (Navigation) 6 7### Global Navigation 8 9- **Home/Feed**: Discover content (Following, Trending). 10- **Library**: User's saved Decks, curated Collections, and private progress. 11- **Create**: Entry point for Authoring tools. 12- **Search**: Global search for Decks, Curators, and Tags. 13- **Profile**: User identity and settings. 14 15### Logical View Hierarchy 16 17- **/** (Home) 18 - Feed of followed curators 19- **/library** 20 - Study Queue (What to review today) 21 - My Decks (Created & Forked) 22 - Saved Collections 23- **/deck/:did/:slug** (Deck View) 24 - Overview (Description, Stats) 25 - Browser/Cards List 26 - Study Mode (Launch Session) 27- **/note/:rkey** (Note View) 28 - Note Content (Markdown) 29 - Backlinks / Linked Cards 30- **/source/:rkey** (Article/Lecture View) 31 - Source Metadata (Title, URL) 32 - Snapshot/Content View (if saved) 33 - Highlights List 34- **/study/:session_id** (Study Session) 35 - Active Recall Interface (Front/Back) 36- **/editor** 37 - New Deck / Edit Deck 38 - Import Source (URL/Text) 39- **/profile/:handle** 40 - Public Decks 41 - Followers/Following 42 43## Data Model Mapping 44 45Mapping screens to underlying data entities (Lexicon Records + Private State). 46 47| Screen / Component | Primary Data Entity | Secondary Entities | Private/Public | 48| :----------------- | :-------------------------------------------- | :------------------------------------------------------- | :---------------------------- | 49| **Deck Overview** | `org.stormlightlabs.malfestio.deck` | `org.stormlightlabs.malfestio.card` (refs), User Profile | **Public** | 50| **Study Session** | N/A (Ephemeral) | `org.stormlightlabs.malfestio.card`, Private Review Log | **Private** | 51| **Card View** | `org.stormlightlabs.malfestio.card` | `org.stormlightlabs.malfestio.note`, Media Blobs | **Public** | 52| **Editor** | Draft State (Local) | Source (`article`), `note` | **Private (Draft) -> Public** | 53| **Source View** | `org.stormlightlabs.malfestio.source.article` | `org.stormlightlabs.malfestio.note` (linked) | **Public** | 54| **Note View** | `org.stormlightlabs.malfestio.note` | Backlinks (`card`/`deck`) | **Public** | 55| **Library** | `org.stormlightlabs.malfestio.collection` | Bookmarks, User Prefs | **Mixed** | 56| **Comments** | `org.stormlightlabs.malfestio.thread.comment` | User Profile | **Public** | 57 58## URL Structure 59 60- `https://app.example.com/` - Home 61- `https://app.example.com/profile/<handle>` - User Profile 62- `https://app.example.com/profile/<handle>/deck/<slug>` - Deck Permalink 63- `https://app.example.com/profile/<handle>/deck/<slug>/card/<rkey>` - Card Permalink 64- `https://app.example.com/profile/<handle>/note/<rkey>` - Note Permalink 65- `https://app.example.com/profile/<handle>/source/<rkey>` - Source Permalink