Files
routstr_protocol/RIP-03.md
T
2025-05-07 15:49:42 +08:00

61 lines
2.2 KiB
Markdown

# TODO
- [x] 100% local frontend (no backend)
- [x] UI components: search bar, filters panel, model card (description, models, price)
- [x] Include chat application, discovery interface, landing page, and documentation
- [x] Support Nostr-based login
- [x] Cashu wallet integration
- [ ] Filter nodes by supported models, region, price range, social proximity, and average rating
- [ ] Allow users to publish personal node information and interact with nodes
- [ ] List active nodes from Nostr Kind 40500
- [ ] Subscribe to Nostr Kind 40500 & 31555 events
- [ ] Maintain in-memory index and update on new events
- [ ] Render node list with applied filters
- [ ] Real-time UI updates on new events
# RIP-03: Frontend Discovery
This document defines a fully client-side, 100% local web or app interface for node discovery, chat, and interaction. There is no backend: all logic and data flow run in the user's browser or device. The frontend includes a chat application, discovery interface, landing page, and documentation. Authentication and filtering leverage Nostr for login and social graph-based filtering. Users can publish their own node information or interact with available nodes directly from the interface.
## Features
- 100% local frontend: no backend, all data and logic run on the client.
- Includes:
- Chat application
- Discovery interface
- Landing page
- Documentation
- Nostr-based login and filtering (social graph proximity)
- List active nodes from Nostr Kind 40500.
- Filter by:
- Supported model(s)
- Region
- Price range
- Social network proximity (follow graph)
- Average rating (from evals)
- Publish personal node information or interact with nodes
- Future: Toggle eval visibility once RIP-04 is live.
## UI Components
- **Search Bar**: Free text for node-id or description.
- **Filters Panel**: Sliders and checkboxes.
- **Node Card**:
- Description
- Models
- Price
- Rating summary
- Connect button (opens external client)
## Data Flow
1. Subscribe to Nostr Kind 40500 & 31555 events.
2. Maintain in-memory index, update on new events.
3. Join with evals to compute live scores.
4. Render node list with applied filters.
## Metrics
- Query performance: ≤200 ms for 1 k nodes.
- Real-time updates: UI refresh on new events.