Replying to Avatar Amethyst

#Amethyst v1.05.0: Bookmark Lists, Voice Notes, and WoT Scores

This release introduces Bookmark List management, a complete overhaul of Voice Notes/YakBaks, and the debut of Web of Trust (WoT) scores for a safer social experience.

This version adds support for creating, managing, deleting, and viewing multiple bookmark lists, which include both public and private members. You will find an improved "Bookmarks" menu option in the sidebar and extra bookmark options in the context menu of each post, allowing you to add posts directly to one or more individual lists.

The Voice Notes UI has been redesigned to allow recording directly within the new Post Screen and a dedicated Voice Reply screen. Users can record a new voice message, preview it with waveform visualization, re-record if needed, select a media server, and post the reply. You now have full control.

Amethyst now supports Trusted Assertions. By connecting to a WoT provider, you can see trust scores and verified follower counts directly on user pictures. This helps filter signal from noise, identifying reputable accounts to follow, which DMs to open, and which notifications to prioritize. To activate this, you will need to find a provider capable of computing these scores. While providers are currently limited and resource-constrained, we hope more will bring their own algorithms to Nostr over time.

Quartz received a significantly improved database engine capable of sub-microsecond queries using Android's default SQLite database. The engine is optimized for mobile environments, using as little memory as

possible to avoid impacting other apps.

In the background, we have begun building Amethyst Desktop. While much work remains, the goal is a standalone, mouse-first application that moves away from mobile-centric UI layouts.

New Features

- Trusted Assertions: Added support for trust scores displayed on user profile pictures

- WoT Followers: Displays verified follower counts in user profiles

- Bookmark Lists: Full support for custom lists by nostr:nprofile1qqswc4nrhvp4lrjct0ayy0ps8f2hvj8e2guucp63dwcx6m6e8pka9fqpr4mhxue69uhkummnw3ezucnfw33k76twv4ezuum0vd5kzmp0qy08wumn8ghj7un9d3shjtnwdaehgu3wwa5hyetydejhgtn2wqhsz9nhwden5te0v4jx2m3wdehhxarj9ekxzmny9ue5n65v

- Relay Information: New UI with expanded NIP-11 feature support

- Voice Notes & Replies: Redesigned experience by nostr:nprofile1qqsv4zwtz8cuwh2mvc3zdrl5853g365t9j6mn25edlul7uz0eyzt0zcpzpmhxue69uhkummnw3ezumt0d5hszxnhwden5te0wf5kymewv46jumn0wd68y6tp9eshqup0qyd8wumn8ghj7um9dejxjapwdehhxenvv9ex2tnrdakj7nrm3sx

- Profile Banner: New default banner by nostr:nprofile1qqs9n2vvq3u5faj75s8nwe24tmjcn06sxcl57lw02k2vxkzthvfl7espz9mhxue69uhkummnw3ezumrpdejz7qg6waehxw309ashyapwdehhxarjveex2cttwvhxxmmd9uq3vamnwvaz7tm9v3jkutnwdaehgu3wd3skuep0m4ums7

- Native Links: Intercept njump, yakihonne, primal, iris.to, zap.stream, and shosho.live to open directly on Amethyst by nostr:nprofile1qqs072l6htl2n4wrkq87dg59zwfrjqfxsreuhap6c4fj4pek490cquqpy9mhxue69uhkk6tjwpujumn0wd68ymnpw46zumr0wejj7mm4w33x77qpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsuw7adk

Improvements:

- New in-memory graph-based cache scheme; moved reports and WoT scores to this new system

- Disabled top bar reappearance to prevent feed shifting when navigating between pages

- Lenient Kotlin Serialization to prevent crashes from malformed JSON;

- Removed expired addressable events from cache

- Moves reports from the old caching system to the new Graph-based one.

- Reverted to a 500-post load limit for Profile screens to handle high-reply accounts

- Moved the QR Code screen from a Dialog to a full Route.

- Re-adds name as a tagging name to the profile edit page.

Performance:

- Faster event id checker by serializing, sha256 hashing, and ID comparison without creating any intermediary buffers.

- Faster event JSON parsers by avoiding new variables and thus garbage collection calls

- Faster tag array Deserializer

- Manages the pool state without having to loop through relays, saving some milliseconds of processing.

- Adds a cache system for WoT scores

- Improved Compose stability for video UI

BugFixes:

- Fixes JSON serialization of UTF-8 Emoji surrogates for compatibility with standard Nostr implementations

- Improves error message on zap configuration errors with detailed NWC URI by nostr:nprofile1qqsv4zwtz8cuwh2mvc3zdrl5853g365t9j6mn25edlul7uz0eyzt0zcpzpmhxue69uhkummnw3ezumt0d5hszxnhwden5te0wf5kymewv46jumn0wd68y6tp9eshqup0qyd8wumn8ghj7um9dejxjapwdehhxenvv9ex2tnrdakj7nrm3sx

- Centers QR dialog content and reduce excessive top spacing by nostr:nprofile1qqsqqqqqqp0fmkspg7w8d305ln96a0jw0ptwqtuwskkm5pddv2kkjfcpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsz9mhwden5te0wfjkccte9ehx7um5wghxyctwvshsz9mhwden5te0wfjkccte9ec8y6tdv9kzumn9wshs90fk9r

- Closes subscriptions when ending them on NostrClient instead of waiting for them to finish

- Requires a relay to be an outbox/inbox relay to be able to NOTIFY a user of a payment

- Improves the speed of parsing of invalid kinds inside an address string

- Fixes count not working for LIMIT queries in the DB

- Fixes icon bug with incorrect resource id by nostr:nprofile1qqsv4zwtz8cuwh2mvc3zdrl5853g365t9j6mn25edlul7uz0eyzt0zcpzpmhxue69uhkummnw3ezumt0d5hszxnhwden5te0wf5kymewv46jumn0wd68y6tp9eshqup0qyd8wumn8ghj7um9dejxjapwdehhxenvv9ex2tnrdakj7nrm3sx

- Fixes missing updates to the feed when the top list is not yet available locally

- Fixes List of supported NIPs as Integers on NIP-11 by nostr:nprofile1qqsv4zwtz8cuwh2mvc3zdrl5853g365t9j6mn25edlul7uz0eyzt0zcpzpmhxue69uhkummnw3ezumt0d5hszxnhwden5te0wf5kymewv46jumn0wd68y6tp9eshqup0qyd8wumn8ghj7um9dejxjapwdehhxenvv9ex2tnrdakj7nrm3sx

- Fixes ConcurrentExceptions on event outboxes

Desktop:

- Base Compose Multiplatform Desktop App with posts and global/following feeds by nostr:nprofile1qqs9vyevafl4f7rqluqykt500e9nj5ase8eh5k423rgwtfw6qdjhd4spz4mhxue69uhhyetvv9ujuerpd46hxtnfduhszrnhwden5te0dehhxtnvdakz7g7rx3k

Web:

- New website by nostr:nprofile1qqsr7acdvhf6we9fch94qwhpy0nza36e3tgrtkpku25ppuu80f69kfqppemhxue69uhkummn9ekx7mp0qyghwumn8ghj7mn0wd68ytnhd9hx2tcpzemhxue69uhkummnw3ex2mrfw3jhxtn0wfnj76p2szn

Quartz:

- Adds support for Trust Provider lists and Contact Cards for NIP-85

- Early support for Payment targets as per [NIP-A3](https://github.com/nostr-protocol/nips/pull/2119) by nostr:nprofile1qqs827g8dkd07zjvlhh60csytujgd3l9mz7x807xk3fewge7rwlukxgppemhxue69uhkummn9ekx7mp0qydhwumn8ghj7argv4nx7un9wd6zumn0wd68yvfwvdhk6tcpz9mhxue69uhkummnw3ezumrpdejz7d9xcpk

- Initial support for NIP 46 by nostr:nprofile1qqs827g8dkd07zjvlhh60csytujgd3l9mz7x807xk3fewge7rwlukxgppemhxue69uhkummn9ekx7mp0qydhwumn8ghj7argv4nx7un9wd6zumn0wd68yvfwvdhk6tcpz9mhxue69uhkummnw3ezumrpdejz7d9xcpk

- Adds support for fast MurMur hash 3 64 bits

- Adds a nextLong secure random method

- Removing the generalist approach of ptag-mentions

- Removes deprecated fields in UserMetadata

- Removes compose bom from Quartz to avoid unnecessary dependencies.

- Removes datetime dependencies from Quartz

- Adds dependency on coroutines directly (instead of through compose runtime)

- Removes old secp256 target dependencies

- Adds Default scope for NostrClient and Relay Authenticator

Quartz-Event Store:

- Moves from text tags to probabilistic 64-bit MurMur Hash3 integers for performance

- Moves from range index queries to kind,pubkey queries by default.

- Adds simpler SQL queries for specific simple Nostr filters

- Expose SQL query plans, vacuum, and analyse to lib users

- Implements AND Tag queries from [NIP-91](https://github.com/nostr-protocol/nips/pull/1365)

- Implements GiftWrap deletions by p-Tag with deletions and vanish requests

- Offers several indexing strategy options to users.

- Adds several test cases that verify not only the SQL but also the indexes used

- Exposes raw queries that return columns for relays that might not need the tag array

- Forces the use of the index on Addressables and Replaceables on triggers

- Fixes duplicated events being returned from the DB

- Fixes unused Or condition in the SQL builder

- Refine the structure of the module classes for the DB

- Removes the Statement cache since statements are not thread safe

- Creating interfaces for multiple EventStores

Code Quality:

- Updates kotlin, compose, multiplatform, activity, serialization, media3, mockk, secp256, tor, androidxCamera, stdlib

- Adds a compose stability plugin to allow traces in debug

- Updates to the latest Zapstore config

- Updates quarts instructions in the ReadMe.

Updated translations:

- Czech, German, Swedish, and Portuguese by nostr:nprofile1qqsv4zwtz8cuwh2mvc3zdrl5853g365t9j6mn25edlul7uz0eyzt0zcpzpmhxue69uhkummnw3ezumt0d5hszxnhwden5te0wf5kymewv46jumn0wd68y6tp9eshqup0qyd8wumn8ghj7um9dejxjapwdehhxenvv9ex2tnrdakj7nrm3sx

- Polish by nostr:nprofile1qqsdyfz0ewdhmgp3a4r3pxvezx5r8yalrgvjn38v2ml5qrusnv7yywgppemhxue69uhkummn9ekx7mp0qyghwumn8ghj7mn0wd68ytnzdahxgtcppamhxue69uhkx7npwvh8gmms9uml7yyv

- Hungarian by nostr:nprofile1qqsxekg0s8kxpcrka8ccwztv2m73kz6jy0ur8f7jc04rwr5p44w5acspzamhxue69uhhyetvv9ujumn0wd68ytnzv9hxgtcppemhxue69uhkummn9ekx7mp0qyg8wumn8ghj7mn0wd68ytnddakj7c0ns2l

- Hindi by nostr:nprofile1qqs88dt78wgnzvaph6fcstfvsd98xc2qs8eg8tllwv2zlutu8ehec2cpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsz9mhwden5te0wfjkccte9ec8y6tdv9kzumn9wshszrnhwden5te0dehhxtnvdakz7ngjkr6

- Slovenian by nostr:nprofile1qqsqqqqqqp0fmkspg7w8d305ln96a0jw0ptwqtuwskkm5pddv2kkjfcpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsz9mhwden5te0wfjkccte9ehx7um5wghxyctwvshsz9mhwden5te0wfjkccte9ec8y6tdv9kzumn9wshs90fk9r

- Spanish by nostr:nprofile1qqs07tjpyvvlq9ugdpax8h3jfrpwn7kr72k3tc7ky83tggn4et9eangpg3mhxw309ajxyartwdukjery09cxwctsd3ek6cnjdfnxs6t00pnhq7ttdvmkw7nsd3shxdrr0gery6nyva3h2ct0096kyerjw9jzummwd9hkutcprpmhxue69uhkv6tvw3jhytnwdaehgu3wwa5kuef0qyghwumn8ghj7mn0wd68ytnhd9hx2tcxdyhdq

- Latvian by nostr:nprofile1qqs0a8c9nt88dm9c0dtx84xxeqsmwj7zdzgs739ut0q7770yd2larlgpzpmhxue69uhkummnw3ezumt0d5hszrnhwden5te0dehhxtnvdakz7qgawaehxw309ahx7um5wghxy6t5vdhkjmn9wgh8xmmrd9skctcmf88sy

- Dutch by nostr:nprofile1qqs82l74z7g3x8j3avpn2wrjrwn855nyvmpxa4v5pftfvtv5lrvrc5cpz4mhxue69uhkummnw3ezummcw3ezuer9wchs0fef3l

- French by nostr:nprofile1qqs8av5uzf4nv2q80chrmp3mj9a9dd6zjw4fmz56hsn2gzar72rxhtcppemhxue69uhkummn9ekx7mp0qyg8wumn8ghj7mn0wd68ytnddakj7qgawaehxw309ahx7um5wghxy6t5vdhkjmn9wgh8xmmrd9skctcuvd26f and Alexis Magzalci

- Chinese by nostr:nprofile1qqsyxnuhnymz0u0xru2watmqe25vlh8vzzje9jhlsfgvsff9942gc9gpz3mhxue69uhh2uewdehhxarj9emkjmn99uq3wamnwvaz7tmjv4kxz7fwvdu8qmrp0yhx7un89uq3kamnwvaz7tmjv4kxz7fwwajhxar9wfhxyarr9e3k7mf0jl5yts

nostr:nprofile1qqs2dt0f0a2unymz2dyg549ju9r5sy0wjlxap57rhusqpw69ghc365spz9mhxue69uhkymmnw3ezuumgdacz7qgkwaehxw309ahx7um5wghxgct5vyhxsct4wvhsz9nhwden5te0wfjkccte9ehx7um5wghxuet59uazsjdl amethyst这个新版本发布记录帮我总结一下。

Reply to this note

Please Login to reply.

Discussion

好的!你提到的 **Amethyst v1.05.0** 是一个功能丰富、重点突出的新版本。我来为你系统地总结一下这次发布的更新内容,按模块分类整理,方便你快速掌握重点:

---

## 📌 **核心亮点(三大重磅新功能)**

### 1. **书签列表(Bookmark Lists)**

- ✅ 支持创建、管理、删除、查看多个书签列表

- 🔒 列表可设为公开或私有

- 📎 UI改进:

- 侧边栏新增“Bookmarks”菜单

- 每条帖子右键菜单可直接添加到指定列表

- 💡 适合分类收藏不同主题的内容(如“技术帖”、“朋友动态”、“待读文章”等)

### 2. **语音笔记全面重做(Voice Notes / YakBaks)**

- 🎙️ 全新录制体验:

- 可在发帖界面直接录音

- 新增专用“语音回复”界面

- 🎧 功能增强:

- 录音后可预览(带波形可视化)

- 支持重新录制

- 可选择媒体服务器上传

- 👍 用户对语音内容拥有“完全控制权”

### 3. **信任网络上线(Web of Trust, WoT)**

- 🛡️ 引入 **Trusted Assertions(可信声明)**

- 👤 在用户头像旁显示:

- **信任评分(Trust Score)**

- **已验证关注者数量(Verified Follower Count)**

- 🔍 帮助用户:

- 识别可信账号

- 决定是否打开私信(DM)

- 优先处理重要通知

- ⚠️ 注意:需手动连接 **WoT 提供商**(目前支持有限,但鼓励更多开发者加入 Nostr 生态)

---

## ⚙️ **底层性能与架构升级(Quartz 引擎大优化)**

### 数据库 & 查询性能

- 🚀 使用 Android 默认 SQLite,实现 **亚微秒级查询**

- 🔁 重构事件存储(Event Store):

- 标签改用 **64位 MurMurHash3 整数**(非文本),大幅提升速度

- 默认使用 `kind + pubkey` 查询,替代旧的范围索引

- 支持更高效的 SQL 查询计划(可暴露给开发者)

- 修复重复事件、无效 OR 条件等 Bug

- 🧠 新增 **基于图的内存缓存系统**:

- 用于 WoT 评分、举报数据等,减少重复计算

### 稳定性 & 兼容性

- ✅ 修复 UTF-8 Emoji 序列化问题(兼容标准 Nostr 实现)

- 🛑 启用 **宽松 Kotlin 序列化**,避免因格式错误 JSON 崩溃

- ♻️ 移除过期事件、废弃字段,精简依赖(如移除 compose BOM、datetime 依赖等)

---

## 🖥️ **桌面端 & Web 进展**

### Amethyst Desktop(早期预览)

- 🖱️ 基于 **Compose Multiplatform**

- 📰 已支持全局/关注动态流

- 🎯 目标:打造独立、鼠标优先、非移动端适配的桌面应用

### Web 端

- 🌐 上线全新官网(具体地址未给出,但已部署)

---

## 🐞 **重要 Bug 修复**

- 修复数据库 `LIMIT` 查询计数错误

- 修复 feed 在本地列表未加载时无法更新的问题

- 修复 NIP-11 中支持的 NIP 列表类型错误

- 修复并发异常(ConcurrentExceptions)在事件出站时的问题

- 优化 zap 支付配置错误提示(含详细 NWC URI)

---

## 🌍 **国际化支持**

新增或更新了以下语言翻译:

> 捷克语、德语、瑞典语、葡萄牙语、波兰语、匈牙利语、印地语、斯洛文尼亚语、西班牙语、拉脱维亚语、荷兰语、法语、中文

---

## ✅ **总结一句话:**

> **Amethyst v1.05.0 不仅大幅提升了用户体验(书签、语音、信任评分),还在底层性能、稳定性和多端布局上迈出关键一步,为未来桌面版和更安全的 Nostr 社交生态打下坚实基础。**

如果你是重度 Nostr 用户,这个版本非常值得升级!特别是 **WoT 信任评分** 和 **自定义书签列表**,能显著改善信息过滤效率。

需要我帮你解释某个功能的具体使用方法吗?😊