# AIUI Progress ## Current Status **Active Milestone**: M1 — Stability & Polish **Overall**: ~65% architectural completeness ## Roadmap ### M0: Foundation ✅ - [x] Chat interface with streaming (Claude/OpenRouter/Mock) - [x] 11 content type renderers (film, song, podcast, book, TV, image, place, article, magazine, nostr, code) - [x] Responsive layout (mobile three-column + desktop overlays) - [x] Glass morphism design system (Tailwind CSS) - [x] Claude proxy + web search (SearXNG/DDG) - [x] PWA support (auto-update, installable) - [x] Music player (Plyr-based PlayerBar) - [x] Dev chat persistence (Vite middleware) ### M1: Stability & Polish 🔄 - [x] Progress tracking automation - [ ] Error boundaries (`onErrorCaptured` wrappers) - [ ] Unit tests — contentExtraction composable - [ ] IndexedDB persistent storage - [ ] Unit tests — useAI composable - [ ] E2E test expansion (content surfaces, responsive) ### M2: Content Experience 🔲 - [ ] Markdown rendering in chat (markdown-it) - [ ] Music source resolution + queue management - [ ] Virtual scrolling for chat (@tanstack/vue-virtual) - [ ] Nostr feed integration (relay WebSocket) ### M3: Plugin System 🔲 - [ ] Activate plugin registry at runtime - [ ] Renderer plugin registration (film/song) - [ ] Plugin settings UI - [ ] Plugin sandboxing (Tier 1/2) ### M4: Social & Discovery 🔲 - [ ] Social embeds (Nostr notes inline) - [ ] Federated search across content types - [ ] Bookmarks/favorites (IndexedDB) ### M5: Security & Privacy 🔲 - [ ] E2E encryption (tweetnacl.js) - [ ] Encrypted storage (AES-256-GCM over IndexedDB) - [ ] API key vault (Web Crypto + PBKDF2) ### M6: Payments & Identity 🔲 - [ ] Lightning wallet deep-links - [ ] Cashu token support - [ ] Nostr identity (NIP-07) ### M7: Platform 🔲 - [ ] MCP integration - [ ] Multi-provider AI normalization - [ ] Tauri desktop build - [ ] Offline mode (service worker, local-first sync) ## Session Log