-
v3.0.0 Stable
released this
2026-06-14 01:26:36 +00:00 | 182 commits to main since this releaseWhat's New in v3.0.0
This release marks the completion of the v3 roadmap — a major expansion of Tea Leaves from a personal research tool into a full publishing and collaboration platform.
Image Annotation (P1)
Draw and label regions directly on screenshots and media files. Rect and polygon annotations with touch support, stored per media item. Annotations survive media deletion cascades.
Profile Settings & Public Slug (P2)
Identity layer for all publishing features: display name, bio, avatar upload, social links (Bluesky, website), and a public username/slug with optional redirect preservation on change.
Visibility Controls (P3)
Three-tier visibility (
private/unlisted/public) on both entries and motifs. UnauthenticatedGET /api/public/:slug/entriesand/motifsroutes expose public content without login.Public Profiles & Motif Pages (P4)
Public-facing profile pages (
/u/:slug) and shareable motif pages (/u/:slug/motifs/:motifSlug) with Open Graph meta tags, print/PDF support, embeddable graph view, APA-style citation copy, andsitemap.xml/robots.txtgeneration.Comments (P5)
Threaded comments (one level of replies) on motifs for logged-in users and share-link holders. Viewer-role share links are read-only; commenter-role holders can post with a display name. Motif owners can delete any comment.
Outgoing ActivityPub (P6)
Publish research to the fediverse. WebFinger, Actor, Outbox, and Followers endpoints; RSA-2048 HTTP Signatures; Follow/Unfollow inbox handling; per-motif "Publish to fediverse" button. Private keys are AES-256-GCM encrypted at rest and never returned by any API.
Tag Management (P7)
Settings → Tags section for renaming, merging, and deleting tags. Rename preserves all entry associations; merge transfers associations and removes the source tag.
Admin Panel (P8)
Admin-only user management (role promotion/demotion, enable/disable) and paginated audit log viewer with filters. The first registered user is automatically seeded as admin. Deactivated users are rejected at the OIDC callback and have their sessions terminated on the next
/auth/mepoll.Advanced Backup (P9)
Multi-destination backup with per-destination cron schedules, snapshot browser, two-snapshot diff viewer, and a granular entry-level restore flow (stage → review → apply/skip per entry). Integrity trend sparkline shows the last 12 weeks of verification results.
Image Embedding & Visual Similarity (P10)
AI-generated description text is embedded and stored alongside each media upload. Per-image "Find similar images" button surfaces the top 8 visually similar images across all entries. Batch re-embedding available from Settings → AI tools.
Gap Fixes (post-P10)
- Per-user Fediverse toggle — users can opt out of federation from their profile; all AP/WebFinger endpoints return 404/410 when disabled
- Server-wide federation kill switch — admins can disable ActivityPub entirely from Settings
- Embedding dimension hint — Settings UI now warns that the
vector(768)column requires a migration if the model output dimension changes - Public comments on motif pages — visitors can read comments on public motif pages without logging in; logged-in users can post
- Image thumbnails in search results — search result cards show a 56×56 thumbnail when the entry has an image with an embedding
Database Migrations Applied
Migrations 015–024 are applied automatically on startup.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads