Releases: omidnw/vorynth
Release list
Vorynth v1.7.0
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.
Vorynth v1.6.0 - Navigate the Maze
Vorynth becomes a personal intelligence workspace. Intelligence and News modes are now explicit
choices instead of a silent guess, and a new Archive turns everything you collect — stories,
saved items, summaries, keyword searches, AI answers — into one organized, searchable,
note-taking space you fully own. An in-app Documentation & Tutorial page explains exactly how
Vorynth works, search moved into the Archive, sources gained time-range windows, and the app now
ships with its first real automated test suite.
What's new
- Mode switch — Intelligence (LLM-generated Why It Matters / Impact / Recommended Action) and
News (ranked feed, no AI) are now explicit choices on the Settings page. Vorynth no longer
decides for you based on whether a key exists; flip modes at any time, and the choice is
remembered. - Active provider selection — when more than one LLM provider is configured, choose which one
actually serves your calls via "Set active" on each provider. The active provider is
remembered, with the most recently enabled provider as the fallback. - Regenerate All Insights — one button in Settings re-runs the AI triad for every story,
updating existing insights in place using your current AI output language. - Translate Story Titles — translate every collected story's title into your AI output language
in a single job. The original title is preserved and you can toggle between translated and
original per article in the Brief. - Archive — a unified space for everything Vorynth has collected: stories, saved items,
generated summaries, keyword searches, and Ask-AI answers. Create categories and folders, tag
items, write notes, and move anything anywhere. - Save (bookmark) — every story now has a real Save action backed by the engine. Saved stories
live in the Archive and get their own Bookmarks view — and retention never deletes something
you saved. - Documentation & Tutorial — an in-app page explaining every screen, how data is collected, why
titles and descriptions differ from the original, and exactly how importance ranking, Ask AI,
and the brief summary work. No more black box.
Improvements
- Search moved into the Archive — one place to find everything (stories, notes, tags, saved
items, past searches), plus a new advanced search built for researchers: filter by domain,
author, importance, date range, and whether a story has AI analysis. - Sources page — pick a time window (day, week, month, year, or custom dates) to see what a
source has published, with an honest note when older articles were pruned by the retention
window. - Provider deletion now asks for confirmation, with a "don't show again" option — and the
confirmation dialogs can be reset from your Profile, so the safety net always comes back if
you want it. - Settings moved out of the sidebar navigation into the footer next to Profile, and the two
pages cross-reference each other — app settings live on Settings, personalization lives on
Profile. - First automated test suite — Jest + ts-jest for the engine (temp-SQLite harness, offline
mocked LLM provider, domain-invariant tests), Vitest + Testing Library for UI components,
Playwright for critical user journeys, and Storybook for component stories — so regressions
now have somewhere to get caught.
Fixes
- Dark-mode legibility — hover states on buttons, the theme toggle, insight details, and
floating action bars no longer wash out their labels. Backgrounds change on hover while the
text keeps its original (readable) color.
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.
Vorynth v1.5.0 — Knowledge Paths
Vorynth tells its own story now — the name origin, the build system, and every supported platform are documented end-to-end. CI pipelines for HarmonyOS, FreeBSD, and Windows have been hardened, and the favicon finally carries the actual Vorynth logo.
What's new
- Name origin — "Why Vorynth?" section on the landing page and README explaining the Vor (vision/voyage) + Yn (intelligence network) + Th (thought/depth) construction.
- HarmonyOS setup guide — completely rewritten with real SDK URLs, toolchain table, DevEco Studio steps, and honest limitations.
- Built with ZCode — a personal note crediting the tools (GLM 5.2, DeepSeek V4 Flash, ChatGPT) used during development, explicitly framed as experience rather than promotion.
Improvements
- CI no longer runs on doc-only changes — saves runner time when only README, docs, or AGENTS.md are updated.
- Favicon regenerated from the actual Vorynth logo (not a generic brain) at 4 resolutions in a single .ico.
- Version sync — a new
pnpm version:syncscript reads the version from a single source (rootpackage.json) and updates all 5 version files; CI validates they stay in sync. - Release artifacts — HarmonyOS raw bundle and FreeBSD tarball are now attached to the GitHub release draft alongside the desktop installers, so every supported platform is represented in a single release.
Fixes
- HarmonyOS CI — fixed
glib-syscross-compilation failure by making Tauri and desktop-only Rust dependencies conditional (cfg(not(target_env = "ohos"))). The native bridge library (lib.rs) always had zero Tauri usage, but Cargo resolved Tauri unconditionally for all targets, pulling in gtk/glib/webkit2gtk which don't exist in the OHOS NDK. - FreeBSD CI — replaced
cargo install tauri-cli(which fails on FreeBSD because its dependencycargo-mobile2hard-rejects unsupported hosts withcompile_error!) with plaincargo build+ manual sidecar staging. The frontend is embedded at compile time viatauri::generate_context!(), and the sidecar ships as a directory next to the binary. - Windows CI —
spawn()withshell: truecaused ncc to hang on Node 24 on Windows (cmd.exe file association issues). Fixed by invoking ncc directly throughprocess.execPath, bypassing cmd.exe entirely. - Engine port drift — the default fallback port now matches between frontend (34117) and engine, so
pnpm devworks without manual env config. - YAML syntax — invalid indentation in
package.ymlmatrix block fixed.
Known issues
- HarmonyOS CI requires downloading a ~2.3 GiB SDK on cache miss. The NDK setup will be streamlined in a follow-up release.
- 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.