-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathobtanium.json
More file actions
632 lines (632 loc) · 34.7 KB
/
obtanium.json
File metadata and controls
632 lines (632 loc) · 34.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
{
"id": "Mycelium",
"name": "Mycelium",
"summary": "A modern social networking platform built with Jetpack Compose",
"description": "Mycelium is a modern social networking platform where users can share thoughts, ideas, and connect with others in meaningful ways. Built with the latest Android technologies including Jetpack Compose and Material Design 3.",
"author": "Tekkadan",
"authorEmail": "npub12zqf55l7l9vsg5f6ssx5pq4f9dzu6hcmnepkm8ftj25fecy379jqkq99h8",
"authorWebsite": "https://njump.me/npub12zqf55l7l9vsg5f6ssx5pq4f9dzu6hcmnepkm8ftj25fecy379jqkq99h8",
"sourceCode": "https://github.com/TekkadanPlays/mycelium-android",
"license": "MIT",
"categories": ["Social"],
"tags": ["social", "compose", "material-design", "modern"],
"screenshots": [
"https://raw.githubusercontent.com/TekkadanPlays/mycelium-android/main/screenshots/screenshot1.png",
"https://raw.githubusercontent.com/TekkadanPlays/mycelium-android/main/screenshots/screenshot2.png",
"https://raw.githubusercontent.com/TekkadanPlays/mycelium-android/main/screenshots/screenshot3.png"
],
"icon": "https://raw.githubusercontent.com/TekkadanPlays/mycelium-android/main/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png",
"banner": "https://raw.githubusercontent.com/TekkadanPlays/mycelium-android/main/banner.png",
"releases": [
{
"version": "0.5.30",
"versionCode": 50,
"releaseDate": "2026-04-09",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.30-beta/Mycelium-v0.5.30-beta.apk",
"changelog": "Feed performance overhaul, media aspect ratio stability, notification pipeline fixes, and full notification history on cold start.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Perf: feed recomposition overhaul — structural equality on NoteCard models + per-item remember blocks prevent O(N) recomposition cascades",
"Perf: new-notes counter animation replaced with fade (eliminates layout-triggering expandVertically)",
"Fix: media default aspect ratio standardised to 4:3 across feed, quoted notes, notifications, and thread view — eliminates scroll teleporting",
"Fix: media ratio corrected once after image load via one-shot callback instead of continuous recomposition",
"Fix: scroll position no longer resets to 0 on configuration change (LazyListState key split from content key)",
"Fix: all notifications restored from Room on cold start — no artificial cap (supports years of history)",
"Fix: boost (repost) context survived across cold starts — cross-pollination pipeline preserved",
"Fix: NIP-18 repost detection and e-tag pipeline corrected for boost cross-pollination"
]
},
{
"version": "0.5.24",
"versionCode": 49,
"releaseDate": "2026-03-30",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.24-beta/Mycelium-v0.5.24-beta.apk",
"changelog": "Relay list persistence fix, NWC wallet connect NIP-04 compatibility, dual-store category desync elimination, reactive sidebar updates.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Fix: kind-30002 relay lists no longer drop from sidebar until restart (dual-store desync eliminated)",
"Fix: sidebar now updates immediately when fetchRelaySets auto-applies categories on first sign-in",
"Fix: standalone categories are the single source of truth — profile store mirrors them automatically",
"Fix: NWC reverted to NIP-04 encryption for wallet relay compatibility",
"Fix: reactive profile resolution in reaction/zap/boost drop-downs",
"Fix: quoted note counts and stale data on pending note release",
"Fix: reactive profile resolution for quoted notes at all nesting depths"
]
},
{
"version": "0.5.23",
"versionCode": 48,
"releaseDate": "2026-03-30",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.23-beta/Mycelium-v0.5.23-beta.apk",
"changelog": "Quoted note reactivity fixes, NIP-05 failed flags in home feed, reactive profile resolution for reaction/zap/boost drop-downs.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Fix: depth-2 quoted note counts survive replace=true wipe in updateDisplayedNotes",
"Fix: stale quoted notes re-prefetched when pending notes are released into feed",
"Fix: quoted notes fetched at render time now register with NoteCountsRepository for counts",
"Fix: QuotedNoteContent self-resolves author profiles reactively at all nesting depths",
"Fix: reaction/zap/boost drop-down profiles resolve reactively when arriving from relays",
"Fix: NIP-05 failed verification icon now displays in home feed and ModernNoteCard headers",
"README: Zapstore section updated to 'coming soon'"
]
},
{
"version": "0.5.22",
"versionCode": 47,
"releaseDate": "2026-03-29",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.22-beta/Mycelium-v0.5.22-beta.apk",
"changelog": "Notification UI overhaul, NIP-05 live verification, rendering pipeline optimization, NIP-19 parsing improvements, quoted event fetch fixes, component reorganization.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Notification screen presentation overhaul with restructured tabs and enrichment",
"Live NIP-05 verification across feed, thread, quoted notes, and reply authors",
"NIP-05 icon rendered left of display name in thread reply contexts",
"Rendering pipeline: shared profile revision provider (N coroutines → 1), async content block parsing off main thread",
"Startup sub-phasing: Phase 3 split into 3a/3b/3c for relay slot pressure distribution",
"Merged scroll snapshotFlows (4 → 2) for reduced snapshot system overhead",
"Relay enrichment moved from display-time to ingestion-time (eliminates per-update Note.copy allocations)",
"Fix: silent quoted event drops across fetch pipeline",
"NIP-19 identifier parsing improvements",
"Scroll retention and relay orb reactivity improvements",
"Debug auth gate for relay filter menu",
"Codebase reorganization: repository/ into 7 domain-aligned subdirectories, components/ into relay, live, preview, emoji, zap, compose, media, nav, note, and common subdirectories"
]
},
{
"version": "0.5.21",
"versionCode": 46,
"releaseDate": "2026-03-28",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.21-beta/Mycelium-v0.5.21-beta.apk",
"changelog": "Relay orb persistence, wallet NWC lander, feed stability for returning users, deep-fetch vote hydration, thread navigation fixes, profile performance, zap UI refresh, 10+ bug fixes.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Deep-fetched historical topics now persist relay source URLs for relay orb rendering",
"Settings publishing restricted to outbox-only (no longer targets 30002 list relays)",
"NWC wallet lander with zap-based transaction history",
"Feed stability: hasEverLoadedFeed suppresses reconnect overlay for returning users",
"Deep-fetch pipeline hydrates kind-30011 votes for complete topic data on sign-in",
"Thread drill-down navigation renders deeply nested targets at visible depth",
"Profile page decoupled from dashboard state; O(n) list merging",
"Notification tabs restructured for accurate enrichment per type",
"Zap drawer replaces legacy pop-up menu for consistent interaction",
"Thread relay filter menu gated behind debug flag",
"Always-on set as default connection mode",
"Fixes: scroll interruptions, encoded URL spaces, gif pack reactions, NIP-53 live chat, media re-compositions, indexer publishing target"
]
},
{
"version": "0.5.20",
"versionCode": 45,
"releaseDate": "2026-03-27",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.20-beta/Mycelium-v0.5.20-beta.apk",
"changelog": "Major relay transport refactor (Ktor/Cybin pool), repository and startup coordination, debug diagnostics, Event Delivery screen, relay UI consolidation.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Relay layer: legacy WebSocket client removed; connections and subscriptions aligned with Ktor CIO and CybinRelayPool",
"RelayConnectionStateMachine, SubscriptionMultiplexer, RelayHealthTracker, Nip42AuthHandler, NetworkConnectivityMonitor updates for stability and metrics",
"Repositories: NotesRepository, outbox/NIP-65/66, relay storage, startup orchestration, DMs, and caches adjusted for the transport stack",
"Debug: session dump, verbose relay logging, pipeline diagnostics; debug settings and relay log screen integration",
"New Event Delivery screen for publish/delivery visibility; dashboard, onboarding, topics, and relay management UI tweaks",
"Relay Health standalone screen removed — health surfaced through relay management and related flows"
]
},
{
"version": "0.5.12",
"versionCode": 44,
"releaseDate": "2026-03-26",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.12-beta/Mycelium-v0.5.12-beta.apk",
"changelog": "Onboarding overhaul, notification setup walkthrough, ImmutableList feed optimization, background DM checks, indexer diff banner, documentation framework.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Onboarding overhaul: new phase flow — CHOOSE_MODE, REVIEW_OUTBOXES (diff UI), SELECT_INDEXERS (post-outbox), PREFETCHING_LISTS (follows/mutes/bookmarks), NOTIFICATION_SETUP",
"Interactive notification setup during onboarding: permission request, battery optimization walkthrough, connection mode selection",
"ImmutableList feed optimization: NotesRepository emits ImmutableList<Note> for improved Compose recomposition skip rates",
"Background DM relay checks: RelayCheckWorker queries NIP-17 DM relays (kind 1059) alongside inbox relays",
"Indexer diff banner: non-blocking DashboardScreen banner when remote kind-10086 list differs from confirmed local indexers",
"RelayCategorySyncRepository: PendingIndexerDiff model with accept/dismiss flow for indexer list sync",
"Notification settings screen redesign with permission checks and DM content preview toggle",
"AGENTS.md: universal AI agent guidance framework for efficient codebase iteration",
"CONTRIBUTING.md: fork and contribution guidelines",
"Cursor rules: context-aware .cursor/rules/ for relay, architecture, UI, build, and efficiency",
"README refresh, .gitignore cleanup, orphaned submodule removal (nostr-watch, lightning-kmp, phoenix, better-antigravity)"
]
},
{
"version": "0.5.11",
"versionCode": 43,
"releaseDate": "2026-03-25",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.11-beta/Mycelium-v0.5.11-beta.apk",
"changelog": "Auto-save drafts system, ARTICLE draft type, media gallery flickering fix, FAB menu reorder, DM deduplication fix, NIP-42 auth improvements.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Auto-save drafts: timer-based (10s interval) auto-save across all 5 compose screens (Note, Article, Topic, Reply, Topic Reply)",
"New ARTICLE draft type for NIP-23 long-form content (articles no longer incorrectly saved as TOPIC)",
"Auto-save drafts toggle in Feed Preferences (default: ON)",
"FAB menu reorder: Top → Drafts → Article → Post (most frequent action closest to thumb)",
"Media gallery flickering fix: content-based key for aspect ratio state prevents layout resets on Note re-emissions",
"Carousel page-change ratio updates: swiping between images updates container ratio from cache",
"DM deduplication fix: duplicate sent messages no longer render in conversations",
"NIP-42 auth handler improvements for relay connection stability"
]
},
{
"version": "0.5.10",
"versionCode": 42,
"releaseDate": "2026-03-25",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.10-beta/Mycelium-v0.5.10-beta.apk",
"changelog": "NIP-51 relay set synchronization, indexer list cold-start restore, cross-category relay overlap warnings with NIP-66 verification, zap drawer escape-from-card fix.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"NIP-51 kind 30002 relay set sync — auto-publish categories to outbox on mutation, restore on cold start",
"Kind 10086 indexer relay list cold-start fetch and merge (like Amethyst)",
"FAB menu: Publish All Categories and Publish Indexer List actions",
"Cross-category relay overlap detection with severity-based warning dialogs",
"DM relay isolation enforcement — critical warning when DM relays detected in other sections",
"NIP-66 indexer verification badge — validated against relay monitor data",
"Unverified indexer relay warning with NIP-50 search support check",
"Fix: Zap drawer no longer trapped inside NoteCard — uses full-screen Popup with scrim"
]
},
{
"version": "0.5.03",
"versionCode": 41,
"releaseDate": "2026-03-24",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.03-beta/Mycelium-v0.5.03-beta.apk",
"changelog": "Poll persistence to Room DB, thread view quoted note prefetch optimization.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Poll responses (kind-1018) and zap poll receipts (kind-9735) now persist to Room database instead of SharedPreferences",
"Poll vote tallies seed from Room on cold start — own votes survive app restart without relay refetch",
"Room migration 6→7: added referencedEventId column with index for efficient poll response lookups",
"Thread view quoted notes prefetch on open — embedded quotes resolve instantly from cache",
"Kind-1111 reply quoted notes prefetch after initial load window (parity with kind-1 replies)"
]
},
{
"version": "0.5.02",
"versionCode": 40,
"releaseDate": "2026-03-22",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.02-beta/Mycelium-v0.5.02-beta.apk",
"changelog": "Outbox relay feed freshness, quoted event counts in thread view, media layout shift elimination, NIP-30 custom emoji reaction rendering fix.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Fix: outbox relay posts no longer go stale — outbox events bypass feed cutoff gate",
"Fix: quoted event reaction/zap/reply counts now render in thread view (subscriptions extended to quoted event IDs)",
"Fix: media no longer renders small before expanding — container ratio updates once on image load when initially unknown",
"Fix: NIP-30 custom emoji reactions render as images instead of raw :shortcode: text (ReactionButton, thread replies, optimistic injection all resolve emoji URLs from event tags)"
]
},
{
"version": "0.5.01",
"versionCode": 39,
"releaseDate": "2026-03-20",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.01-beta/Mycelium-v0.5.01-beta.apk",
"changelog": "Notification enrichment, relay resilience, NIP-19 mention rendering, feed deduplication fixes, battery optimization info panel.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Notifications defer until profile + target note data is fully enriched (up to 3s wait, no more placeholder names)",
"Fix: relay blocking no longer triggers on transient DNS/HTTP 502/503 errors",
"Fix: relay health icon scoped to user-configured relays only",
"Fix: unblocking a relay immediately triggers reconnect and resubscribe",
"Fix: NIP-19 @mention rendering race condition resolved with catch-up check and faster debounce",
"Fix: foreground service notification clears new-notes count on feed refresh",
"Fix: duplicate articles eliminated via NIP-33 author:dTag deduplication for kind-30023",
"Fix: duplicate boosts eliminated — display-layer filter hides original when repost version exists",
"Battery optimization info panel added to Notification Settings with direct link to device battery settings"
]
},
{
"version": "0.5.00",
"versionCode": 38,
"releaseDate": "2026-03-20",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.5.00-beta/mycelium-0.5.00-release.apk",
"changelog": "NIP-11 relay icon fix (Damus and all relays), NIP-51 people list feed filtering, feed architecture overhaul with one-shot slot freeing and priority-aware scheduling, kind-30011 NIP document.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Fix: NIP-11 relay icons now load correctly (dedicated HTTP client bypasses ContentNegotiation header override)",
"Fix: NIP-11 URL trailing slash ensures Cloudflare-protected relays serve JSON instead of HTML",
"NIP-51 people list feed filtering — select a kind-30000 list from the feed dropdown to filter by its members",
"Empty people lists correctly blank the feed (custom list filter bypasses transient-empty safety guard)",
"Feed architecture: one-shot subscriptions (follow list, mute list, NIP-65, people lists) auto-free relay slots on EOSE",
"Feed architecture: priority-aware stale thresholds (HIGH 30s, NORMAL 10s, LOW 3s) for faster slot turnover",
"Feed architecture: 2 reserved HIGH-priority slots per relay ensure feed subscription is never starved",
"Kind-30011 replaceable votes NIP document added to repository"
]
},
{
"version": "0.4.99",
"versionCode": 37,
"releaseDate": "2026-03-19",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.4.99/mycelium-0.4.99-release.apk",
"changelog": "Critical thread reply fix, multiplexer dedup fix, relay connection persistence, notification badge stabilization, relay orb enrichment, poll vote timing fix, kind-1111 notification fix.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Fix: thread replies loading empty due to global event dedup in SubscriptionMultiplexer (per-sub dedup now)",
"Fix: infinite parent fetch loop in Kind1RepliesRepository exhausting relay slots",
"Fix: relay connect/disconnect churn — inbox/outbox/category relays stay connected persistently",
"Fix: notification badge flickering on app init (suppressed during replay, unmasked after EOSE)",
"Fix: poll vote UI updating before Amber signing completes",
"Fix: kind-1111 comment replies missing from notifications (Phase 3 E-tag subscription)",
"Fix: Announcements nav button highlighted when in relay manager",
"Relay orbs enriched with NIP-65 outbox relay URLs in feed (no thread open required)",
"NIP-11 preload for subscription relays on startup",
"RelayOrbIcon retries NIP-11 fetch when cache updates"
]
},
{
"version": "0.4.97",
"versionCode": 34,
"releaseDate": "2026-03-18",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.4.97-beta/Mycelium-v0.4.97-beta.apk",
"changelog": "NIP-19 references in long-form articles, themed hyperlinks, outbox relay coverage improvements.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"NIP-19 references in articles: nostr:npub, nostr:note, nostr:nevent, nostr:naddr rendered as clickable markdown links with resolved display names",
"Article hyperlinks styled with theme primary color and underline (no more default blue)",
"Outbox relay coverage: indexer fallback for followed authors missing NIP-65 data",
"Coverage gap diagnostics logging for outbox relay discovery"
]
},
{
"version": "0.4.96",
"versionCode": 33,
"releaseDate": "2026-03-18",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.4.96-beta/Mycelium-v0.4.96-beta.apk",
"changelog": "Subscription priority rebalancing, feed layout shift fixes for media and quoted notes, profile swipe-back guard, force-close on exit, emoji packs, NIP-88 polls, GIF search, notification settings overhaul.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Subscription priority rebalancing: notifications NORMAL→HIGH, feed load-more CRITICAL→HIGH",
"Media layout shift fix: lock container ratio when imeta dimensions unknown (no mid-view resize)",
"Quoted note placeholder height (72dp) prevents feed jump on async load",
"Profile swipe-back guard: mid-swipe reversal no longer triggers pager tab swipe",
"Force-close app on double-back exit (finishAffinity + killProcess)",
"NIP-88 poll rendering and voting (kind-1068)",
"Emoji pack browser with NIP-30 custom emoji selection",
"GIF search via Tenor API in compose toolbar",
"Notification settings overhaul with per-kind toggles",
"Emoji shortcode suggestions in compose (:emoji: autocomplete)",
"Reaction favorites bar for quick emoji access"
]
},
{
"version": "0.4.95",
"versionCode": 32,
"releaseDate": "2026-03-17",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.4.95-beta/Mycelium-v0.4.95-beta.apk",
"changelog": "Major scroll performance overhaul, image loading fixes, thread swipe-back with galleries, embedded Phoenix Lightning wallet (dev), NWC service provider, feature-gated wallet UI.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Eliminated Card overhead — plain Column + background for every feed note card",
"Deferred video player creation — ExoPlayer init delayed 200ms after viewport entry",
"Off-thread content parsing via produceState on Dispatchers.Default",
"Eliminated double measure pass on quoted notes (drawBehind accent bar)",
"Coil image optimization with size(ORIGINAL) and allowHardware(true)",
"Capped per-card profile observer coroutines (1 update, 1500ms debounce)",
"Eliminated O(N) recompositions — hoisted collectAsState to screen level",
"Stabilized ~15 lambda allocations above items{} blocks",
"Replaced SubcomposeAsyncImage with AsyncImage + rememberAsyncImagePainter",
"Image loading headers for stricter CDNs (HTTP 403 fix)",
"Thread swipe-back with galleries — right swipe dismisses thread correctly",
"Embedded Phoenix Lightning wallet with NWC service provider (dev/testnet)"
]
},
{
"version": "0.4.94",
"versionCode": 31,
"releaseDate": "2026-03-14",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.4.94-beta/Mycelium-v0.4.94.apk",
"changelog": "Fix comment controls freezing after reply compose, relay icons rendering in user-created categories, relay orbs tappable in #topics view.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Comment controls no longer freeze after navigating to reply compose and returning",
"Relay icons now render correctly under user-created categories in relay manager",
"Relay orbs are tappable in #topics view (hashtag stats, topic cards, and topic feed notes)"
]
},
{
"version": "0.4.90",
"versionCode": 27,
"releaseDate": "2026-03-08",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.4.90/Mycelium-v0.4.90.apk",
"changelog": "Quoted note media galleries, recursive nested quotes, thread stacking with slide animation, matched media controls to main feed.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Quoted note media renders as swipeable carousel with page indicators",
"Recursive nested quotes up to depth 2 with side-by-side accent bars",
"Thread stacking: quoted notes open as layered slide-in panels",
"Quoted media fullscreen button and indicators match main feed exactly",
"Image tap in quoted notes navigates to thread, magnifier for fullscreen"
]
},
{
"version": "0.4.89",
"versionCode": 26,
"releaseDate": "2026-03-08",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.4.89/Mycelium-v0.4.89.apk",
"changelog": "Reaction emoji on feed, repost counts fix, faster vote loading, own notes stay on feed, relay orb accuracy.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"NIP-25 reactions from thread now show correct emoji on feed cards",
"Repost notes display reaction/zap/vote counts from the original note",
"Kind-30011 votes load immediately (moved from Phase 2 to Phase 1)",
"Own notes no longer vanish from feed when follow filter re-runs",
"Relay orbs only show confirmed relay locations"
]
},
{
"version": "0.4.87",
"versionCode": 24,
"releaseDate": "2026-03-02",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.4.87/Mycelium-v0.4.87.apk",
"changelog": "Smart profile fetching with outbox fallback, payment/auth relay filtering, relay badges, tappable wss:// URLs in notes, improved quoted notes (longer snippets, smooth animation, stable media).",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Smart profile fetching: indexers first, outbox fallback for missing",
"Payment-required and auth-required relays filtered from subscriptions",
"Paid and Auth badges on relay discovery and health screens",
"Tappable wss:// relay URLs in note content",
"Quoted notes: longer snippets, more visible lines, smooth expand/collapse",
"Quoted note media no longer resets on scroll",
"Relay list layout fixes (no more vertical skew)"
]
},
{
"version": "0.4.23",
"versionCode": 17,
"releaseDate": "2026-02-28",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.4.23/Mycelium-v0.4.23.apk",
"changelog": "Profile & media fixes: feed scroll position preserved across fullscreen media navigation, profile header/tab state persistence, video thumbnails in Media column, contextual media fullscreen (per-note gallery instead of all-profile), scrollable profile header with collapsing behavior.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Feed scroll position preserved when dismissing fullscreen media",
"Profile header collapse state persists across navigation",
"Video thumbnails render in profile Media tab",
"Contextual media fullscreen — per-note gallery instead of all-profile",
"Scrollable profile header with collapsing behavior",
"Dashboard scroll position stable across media viewer transitions"
]
},
{
"version": "0.1.2",
"versionCode": 6,
"releaseDate": "2026-02-08",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.1.2/Mycelium-v0.1.2.apk",
"changelog": "Kind-1111 merge/UI fix, edge-to-edge embed and images in feed, conditional body highlight, View relays in kind-1111 replies, relay orbs on kind-11 root, OP styling (shortened chip, OP in feed), README Obtainium link.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Kind-1111 optimistic reply merge fix",
"Edge-to-edge link embed and images in feed",
"Body highlight only when note has text",
"View relays in topic reply dropdown",
"Relay orbs on kind-11 thread root",
"OP chip: name only in highlight, OP in feed"
]
},
{
"version": "0.1.1",
"versionCode": 5,
"releaseDate": "2026-02-08",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.1.1/Mycelium-v0.1.1.apk",
"changelog": "Amber lifecycle fix, zap error feedback, relay picker, NIP-25 kind-1111, zap spacing, app ID Mycelium.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Amber signer persists after restart",
"Zap errors on home feed",
"Relay selection for kind-1",
"NIP-25 on kind-1111",
"Zap chip spacing",
"App ID Mycelium"
]
},
{
"version": "0.1.0",
"versionCode": 4,
"releaseDate": "2026-02-08",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.1.0/Mycelium-v0.1.0.apk",
"changelog": "Thread UI polish (spacing, alignment). Notifications for topic replies (kind-1111) and thread replies (kind-1) with separate filters; open thread/topic with correct reply kind.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"Thread polish - consistent spacing and line alignment",
"Topic and thread reply notifications (kind-1111 and kind-1)",
"Thread vs Topic reply filters in notifications",
"Open thread or topic from notification with correct reply chain"
]
},
{
"version": "0.0.3",
"versionCode": 3,
"releaseDate": "2025-01-22",
"downloadUrl": "https://github.com/TekkadanPlays/mycelium-android/releases/download/v0.0.3/Mycelium-v0.0.3.apk",
"changelog": "Clean v0.0.3 release with Lightning Zaps and Wallet Connect functionality. Connect your Lightning wallet to send zaps to posts and comments.",
"minSdk": 35,
"targetSdk": 36,
"packageId": "social.mycelium.android",
"permissions": [
"android.permission.INTERNET",
"android.permission.ACCESS_NETWORK_STATE"
],
"features": [
"⚡ Lightning Zaps - Send Bitcoin tips to posts and comments",
"🔗 Wallet Connect - Connect Lightning wallets like Alby, Mutiny",
"💰 Account Preferences - Manage wallet connections",
"🎯 Zap Button Components - Full-featured zap buttons",
"💬 Zap Comments - Add messages with your zaps",
"📊 Smart Amount Formatting - Intelligent sat/bitcoin display",
"🔒 Secure URI Handling - Password-protected wallet connection",
"🎨 Material 3 Design - Modern UI with consistent design",
"📱 Responsive UI - Works on all screen sizes",
"🛡️ NIP Compliance - Full NIP-47 and NIP-57 support"
]
}
]
}