diff --git a/ROADMAP.md b/ROADMAP.md index 438505b..970d233 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -81,6 +81,12 @@ Bugs found during testing are fixed before Phase N+1 starts. A release is cut be - Suggest popular accounts and curated starter packs - "People followed by people you follow" as a discovery surface +### 14. Language / alphabet feed filter +- Feature request from Windows playtest (2026-03-11): filter feed to specific languages or scripts +- Could be client-side: detect script via Unicode block ranges, offer toggle in settings +- Or server-side: NIP-50 `language` tag support if relays implement it +- Low effort client-side version: filter by Unicode script (Latin, Cyrillic, CJK, Arabic, etc.) + ### 13. UI polish pass - Full design review: note cards, thread view, profile header, modals - Target bar: Telegram Desktop — fast, keyboard-navigable, feels native not webby @@ -110,6 +116,13 @@ Bugs found during testing are fixed before Phase N+1 starts. A release is cut be ## What's already shipped +### v0.1.8 +- **Fix: account switch broken** — `switchAccount` now checks the signer was actually set before returning; falls back to read-only instead of silently doing nothing; always navigates to feed after switch +- **Fix: "Not logged in" on profile edit** — edit button hidden when signed in read-only (npub); read-only badge shown in profile header +- **Sidebar version number** — `v0.1.8` shown below WRYSTR brand, auto-tracked from package.json +- **Support page QR spacing** — Lightning and Bitcoin QR codes have more breathing room (`gap-16`) +- **ROADMAP: language filter** added to Phase 3 backlog + ### v0.1.7 - **Per-account Lightning wallet** — NWC URI stored per-pubkey; switching accounts loads the correct wallet automatically - **New account creation in-app** — "Add account" → "New account" tab generates a fresh keypair inline diff --git a/package.json b/package.json index d502836..8faf52b 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "wrystr", "private": true, - "version": "0.1.7", + "version": "0.1.8", "type": "module", "scripts": { "dev": "vite", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index fb55279..652b42a 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "wrystr" -version = "0.1.7" +version = "0.1.8" description = "Cross-platform Nostr desktop client with Lightning integration" authors = ["hoornet"] edition = "2021" diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index c6f8d23..73d365b 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "$schema": "https://schema.tauri.app/config/2", "productName": "Wrystr", - "version": "0.1.7", + "version": "0.1.8", "identifier": "com.hoornet.wrystr", "build": { "beforeDevCommand": "npm run dev", diff --git a/src/components/profile/ProfileView.tsx b/src/components/profile/ProfileView.tsx index 2ddc6de..41e2543 100644 --- a/src/components/profile/ProfileView.tsx +++ b/src/components/profile/ProfileView.tsx @@ -4,7 +4,7 @@ import { useUIStore } from "../../stores/ui"; import { useUserStore } from "../../stores/user"; import { useMuteStore } from "../../stores/mute"; import { useProfile, invalidateProfileCache } from "../../hooks/useProfile"; -import { fetchUserNotes, publishProfile } from "../../lib/nostr"; +import { fetchUserNotes, publishProfile, getNDK } from "../../lib/nostr"; import { shortenPubkey } from "../../lib/utils"; import { uploadImage } from "../../lib/upload"; import { NoteCard } from "../feed/NoteCard"; @@ -272,8 +272,13 @@ export function ProfileView() { ← {editing ? "cancel" : "back"}