abdoufermat5/herbarium
Desktop app that keeps your generated HTML pages in a plain-file vault and resurfaces them for spaced review. - abdoufermat5/herbarium
0 stars · 0 forks
README
Herbarium A desktop reader for the HTML pages AI tools generate. Save a page, find it later, open it with its interactivity intact, and schedule it for review so it comes back when you need it. Your pages stay plain .html files in a folder you own.
Install Linux (x86_64 and arm64): curl -fsSL https://raw.githubusercontent.com/abdoufermat5/herbarium/main/install.sh | sh Installs the .deb on Debian/Ubuntu (asks for sudo), the AppImage elsewhere. Pipe to sh -s -- --appimage instead to skip sudo, or sh -s -- --uninstall to remove it. macOS and Windows: download from the releases page. These builds are not code-signed yet, so on first launch allow it in System Settings → Privacy & Security (macOS) or choose "More info → Run anyway" (Windows). Features
Import by drag and drop, file picker or paste. Search titles, tags, notes and page text. Organize with folders, tags and notes; move or edit many pages at once. Read each page in a sandboxed viewer, scripts included. Edit the HTML in the app or in your own editor. Review pages on a schedule you choose, with reminders and a keyboard-driven review session. Trash with restore and undo. Command palette (Ctrl/⌘ K); press ? for all shortcuts. Light and dark themes, English and French.
Your vault A vault is an ordinary folder. Each page is an .html file with a .json file next to it for its title, tags, note and review dates. Folders are real directories. Back it up, sync it or edit it with any tool; Herbarium picks up changes when you come back to the window. Safety Generated HTML runs code, so every page is treated as untrusted. It runs in a sandbox that cannot reach your files, the app or other pages, and it cannot navigate away; links open in your browser only after you confirm. Network access is a per-page switch. When on, a page can load scripts and fonts from well-known CDNs and images from any website, which means it can tell its author when you open it. Keep it off for pages you don't trust. Use with AI agents Herbarium is also an MCP server, so agents can save, search, organize and schedule pages. In Claude Code: claude mcp add herbarium -- herbarium mcp Then ask, for example, "write a short HTML explainer of Cargo workspaces and save it to Herbarium under rust". It uses the vault last opened in the app (or --vault <path>). Development Needs Node.js, pnpm, Rust and the Tauri prerequisites. pnpm install pnpm tauri dev # run the app make ci # everything CI checks Built with Tauri 2, Rust, SQLite and Svelte 5. Releasing Write the changes under [Unreleased] in CHANGELOG.md, then: pnpm release patch # or minor | major | x.y.z git push --follow-tags The tag builds every platform and publishes the release. In-app updates need the signing key pair on the repository: the HERBARIUM_UPDATER_PUBLIC_KEY variable and the TAURI_SIGNING_PRIVATE_KEY secret (create them with pnpm tauri signer generate). License MIT
