ItsGoin v0.3.2 — Decentralized social media network

No central server, user-owned data, reverse-chronological feed.
Rust core + Tauri desktop + Android app + plain HTML/CSS/JS frontend.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Scott Reimers 2026-03-15 20:22:08 -04:00
commit 800388cda4
146 changed files with 53227 additions and 0 deletions

44
TODO.md Normal file
View file

@ -0,0 +1,44 @@
# Distsoc — Bug & Feature Tracking
## UI: People & Social
- [x] **Audience request button on followed peers** — "Ask to join audience" button with status badges. Fixed Feb 24 (427d971).
- [x] **Audience request response UI** — Approve/Deny buttons work in People tab Audience section.
- [x] **Name not updating after follow** — People tab now auto-refreshes every 10s. Fixed Feb 24 (427d971).
- [x] **View node bio** — Bios displayed in peer cards and follows list via resolve_display. Fixed Feb 24 (427d971).
- [x] **Follows list card redesign** — Converted to peer-card layout with rows for name/badge, bio, and actions. Fixed Feb 24 (eba3315).
- [ ] **Own node ID + share link/QR** — Node ID is in Settings. Add a share section with copyable link and QR code (e.g. qrcode.js, no npm). Format: connect string or deep link.
## UI: Network Diagnostics
- [x] **Last update time on diagnostic cards** — "Updated Xs ago" timestamp in diagnostics action row. Fixed Feb 24 (eba3315).
- [x] **Differentiate mesh/N0/N1/N2/N3** — Reach badges (Mesh/N1/N2/N3) on peer cards, slot kind badges (Preferred/Local/Wide) on mesh connections. Fixed Feb 24 (fd2421f).
- [x] **Refresh button verification** — Refresh shows loading state + toast. Fixed Feb 24 (427d971).
- [x] **Sync button verification** — Sync calls `sync_all` with "Syncing..." feedback. Verified working.
- [x] **Rebalance button verification** — Rebalance calls `trigger_rebalance` with "Rebalancing..." feedback + toast. Verified working.
## UI: Messages & Feed
- [x] **DMs only in Messages tab** — Feed now filters out `encrypted-for-me` posts. Fixed Feb 24 (427d971).
- [x] **Message threads** — Conversations grouped by partner with expandable thread view. Fixed Feb 24 (fd2421f).
- [x] **Messages showing in both feed and messages** — Resolved by DM filter. Fixed Feb 24 (427d971).
## UI: Attachments & Media
- [x] **Image attachment display** — CSP `img-src blob:` added. Images render in previews and feeds. Fixed Feb 23.
- [ ] **Video attachments** — Add video player UI for video/* mime types. Under 10MB works with existing blob system. Over 10MB needs chunking (protocol change).
- [ ] **Attachment limits** — Currently 4 attachments, 10MB each. Constants are easy to change. Large file chunking is separate work.
## UI: Updates & Maintenance
- [ ] **Android auto-update** — Check `shareat.app/distsoc/version.json` periodically, show update banner, prompt to download new APK. Can't self-install but can open browser/installer. Extra: notify when data reset needed.
- [ ] **Linux auto-update** — Same version check. AppImage can be swapped in place. Extra: notify when data reset needed.
## Bugs Fixed (Log)
- [x] **Image attachments not displaying** — CSP blocking blob: URLs. Fixed Feb 23 (bf6fe6f).
- [x] **Lock contention freezing node** — QUIC connect held conn_mgr lock for 60+s, blocking all tasks. Fixed Feb 23 (bf6fe6f).
- [x] **Startup blocking on referrals** — Referral peer connections blocked node startup. Spawned as background tasks. Fixed Feb 23 (bf6fe6f).
- [x] **Rebalance/sync buttons lock app with 0 peers** — Related to lock contention. 15s timeout cap added. Fixed Feb 23 (bf6fe6f).
- [x] **DMs leaking into feed** — Encrypted-for-me posts now filtered from Feed. Fixed Feb 24 (427d971).
- [x] **Names not updating after follow** — People tab auto-refreshes every 10s. Fixed Feb 24 (427d971).