Organizing gets its own home. A new Collections page — a file-explorer style icon view with big
folder cards, a breadcrumb, and a ⋯ menu on every folder — turns your archive into folders you
can actually browse, while the Archive itself becomes a clean, searchable items list with a
Trash that makes deletion reversible. Background jobs survive restarts and are never silently
dropped, Translate Stories now handles whole stories in a fraction of the calls, and
right-to-left text finally reads correctly everywhere.
What's new
- Collections page — a file-explorer view of your archive, reachable from the Archive section
tabs (Items · Collections · Bookmarks · Search · Trash) shown on every Archive page.
Categories and folders render as big folder cards (filled for categories): click to select a
folder and see its own items below, double-click to go inside. A breadcrumb traces your path,
every card has a ⋯ menu for its actions — Add items, New folder, Rename, and Delete — and a +
tile creates a new category or folder. An "Add items" button next to the item list fills the
folder you're inside. Each folder lists only its own items — a sub-folder's items appear when
you enter it, while the card's count label shows the whole subtree at a glance. - Collection items are now actionable — click any item inside a folder to open its full detail
page (article reader, briefing, or cached search result), or remove it from the collection
with a confirmation. Removing never deletes the item — it just moves back to uncategorized. - Trash — deleting a collection, folder, or history entry is now a soft delete: it moves to the
Trash (a new page under the Archive) instead of being destroyed, and you can restore it
exactly as it was. Restoring a collection returns its whole folder tree — items that still
point into it come back, items you filed elsewhere keep their new home. 'Delete forever' and
'Empty trash' are the only permanent actions, and they confirm first (warned when saved items
are inside). Settings → Trash sets how long entries stay before they're purged automatically
(default 7 days; days, weeks, months, or years; 0 keeps everything until you empty it) — and
saved items are never auto-deleted.
Improvements
- Archive redesign — a clean single-pane items browser: type filters with icons (Stories,
Saved, Summaries, Searches, AI asks), a text filter, 'Show archived', and pagination. Each
item type has its own icon badge, and every row can be bookmarked, noted, archived, or moved
into a collection. - The five Archive pages now share one uniform layout — a single header skeleton and a
segmented section navigation under the title, with the active section highlighted — so
switching between them never shifts your eye. The sidebar's Archive entry is now one clean
item: the section tabs own the Archive's sub-pages, the sidebar owns global navigation. - Help is one consistent icon away on every page — a header 'How it works' button deep-links to
that page's documentation section, replacing the old 'Read docs' tip cards so pages stay
clean. Docs and Profile have their own documentation sections, including the philosophy
behind each feature. - Translate Stories now translates the full story — title AND body — in one job, sending 5
stories per AI request so large collections finish in a fraction of the calls. Every story
keeps its original title and body one toggle away: an Original/Translated toggle sits next to
the title in the Brief and next to both the title and the body in the reader. Search and AI
analysis keep working on the originals, which are never overwritten. - Jobs survive app restarts. If Vorynth closes while a background job (collect, regenerate
insights, translate stories, …) is running, it comes back on the next launch and continues
from where it stopped — instead of vanishing and making you start over. - LLM requests are now spaced evenly instead of arriving in bursts. Before, several requests
fired back-to-back and the next one then waited out a long one-minute pause; now requests are
paced at a steady interval, so long jobs run more predictably and your provider's rate limit
is never tripped. - Right-to-left text now reads correctly even when a Persian, Arabic, or Hebrew story opens
with a URL, number, or emoji. Every content box — article titles and bodies, translated
stories, AI answers, insights, summaries, search results, and history pages — now looks at
the whole text and picks the direction its majority of characters are written in, instead of
trusting the first character. Neutral text falls back to your app's language direction.
Fixes
- Back now returns you where you came from. Opening an item from the Archive or a collection
and pressing Back lands you back in the same folder you were browsing, with your open folders
still expanded — instead of jumping to a different page. - Background jobs are never silently dropped anymore. Clicking 'Regenerate all insights' or
'Translate Stories' while a job is already running now creates a visible job that waits its
turn and starts automatically when the current one finishes — before, a second click while
one was running did nothing at all, and a job with nothing to do finished instantly and
looked like it never ran. - Settings now tells you when a provider's stored key can't be decrypted. If the local
encryption key was lost — restoring from a backup or cleaning up your data can do that — the
LLM used to stop working with no explanation. Now the provider list marks the key as
unreadable and tells you to remove and re-add the provider.
Known issues
- Source plugins — only RSS, GitHub releases, and arXiv adapters ship today; a full plugin
system is the biggest next step. - Scheduled weekly/monthly reports aren't automatic yet — today / week / month summaries are
on demand. - Intel macOS installer isn't published yet — the landing page says "support coming soon".
- FreeBSD build is experimental: WebKit on FreeBSD is still maturing. The Linux x86_64 binary
(runs via the FreeBSD Linux ABI compatibility layer) is the recommended fallback.
Full changelog
See changelog-data.ts for the complete release history.