1.0.2-beta
Latest
05 Sep 2026
"Carnation" — a repair release. Re-running the installer or npx paperr against an existing install was silently skipping updates; this fixes the update path end to end, adds Docker images, task archiving, chat context management, and log redaction.
Highlights
Updates actually apply now
The bootstrap only pulled git changes when scripts/launch.js was missing — but every checkout has that file, so updates were silently skipped after first setup. It now pulls on every run, with a version-stamp system comparing the built commit hash to git rev-parse HEAD and triggering a dependency refresh + client rebuild on mismatch.
Server restarts itself after an update
In production, when HEAD moves the launcher now stops the old process, waits for the port to free, and starts the rebuilt version. Dev mode is untouched — it writes no PID file so it never kills unrelated processes.
Docker support
New publishing pipeline pushes multi-platform images to ghcr.io/biswasprateek/paperr — :latest bundles the paperrAi Server (amd64 only), :slim drops it for a smaller image on amd64 + arm64.
Task archiving
Tasks move from delete-only to archive/restore. My Tasks gains an Archived filter and bulk operations; archived tasks stay invisible everywhere else, and nothing is ever permanently deleted.
dotAi stops failing on long chats
Local models were throwing once a rendered prompt exceeded the KV cache limit (4096 tokens on gemma4-e2b). A new fitContext step preserves system messages, truncates oversized turns, drops the oldest ones, and clamps the output budget to what's left.
Request logs no longer leak secrets
The /api/* logger was recording plaintext passwords and PINs. A redaction utility now strips exact-match secret fields (password, pin, token, apiKey and variants) by full key name before anything is logged.
Also in this release
- Clearer auth errors — "Cannot reach the paperr server" is now distinguished from a real authentication failure.
- The bundled AI is now called paperrAi Server everywhere in the UI (previously
litert-lm).
- Node.js 22.13+ is now the minimum across all components.
Fixes
- Bootstrap no longer silently skips updates on an existing installation.
- Removed the
install/README.md manual-delete-client-dist workaround — it's not needed anymore.
install/uninstall-linux.sh had lost its executable bit; restored.
- A failed build is retried on next launch instead of being recorded as complete.
Dependencies
- No new dependencies this release.
1.0.1-beta
12 Aug 2026
"Begonia" — installable, self-updating one-click installers for Windows, macOS and Linux, desktop shortcuts, in-app updates, and archivable habits.
Highlights
One-click installers (experimental)
Three double-clickable entry points — install/paperr-windows.cmd, install/paperr-macos.command, install/paperr-linux.sh — detect and install missing Node/git/Python via winget, Homebrew or apt/dnf/zypper/pacman, then clone, build and launch paperr with zero terminal use.
Desktop shortcuts, no Electron
Each install gets a dev shortcut and a "LAN Server" shortcut, both generated from one definition in scripts/launch.js. It opens paperr in a chromeless Chrome/Edge/Brave window via --app=, falling back to a normal tab when no Chromium browser is found.
In-app Updates panel
Settings gains an admin-only Updates panel that pulls repo changes with SHA comparison and hard-reset safety — it refuses to run with local modifications and reinstalls only the workspaces that actually changed.
Archivable habits
Habits can now be archived instead of deleted — streaks and history are preserved, and Routines → Progress gains an auto-expanding Archived section.
Sharper icons
Raster favicons (16/32/512px) supplement the SVG for Chromium app windows and home-screen installs, and macOS now gets a proper multi-resolution .iconset/.icns via sharp + iconutil instead of a single upscaled image.
Also added
- Reversible uninstall scripts for all three platforms — stop the server, remove shortcuts, prompt about data retention.
- Installable as a standalone web app via
client/public/manifest.webmanifest.
- Typography pass — small-caps labels replaced with plain, larger
text-label-md throughout the app.
Fixes
- Shortcut-creation failures (missing PowerShell, script errors) were silently swallowed; now surfaced.
- Windows banner rendered as mojibake from a stray bare
& in an echo; converted to plain ASCII.
--purge on Windows failed with EPERM on read-only git objects; fs.rmSync retry added.
- Console windows no longer proliferate on Windows from inherited
windowsHide: false.
- macOS uninstall left ghost Launchpad icons; uninstaller now calls
lsregister -u after deleting.
Dependencies
- No new npm packages — the launcher, uninstaller and updater rely entirely on Node built-ins.
1.0.0-beta
01 Aug 2026
"Azalea" — the first beta of paperr. Everything built since the initial commits, rolled into one release, plus a new Analytics page and a full accessibility/motion-control pass. Supersedes 0.1, 0.1.1 and 0.1.2 as the canonical release.
Highlights
Analytics
A new page turns Focus & Wellness session data into insight — trend charts, a Pomodoro heatmap, and streak badges across Personal, Family/Team, and a raw editable Log tab. Mood and Meditation stay Personal-only by design, never surfaced at the space level.
Motion & accessibility
A new Settings → Motion panel adds a master Reduce Motion switch (on by default if your OS already asks for it) plus per-effect toggles — task/habit celebrations, weather icon animation, widget jiggle, alarm shake, and the Breathe app's pulse — for anyone who finds on-screen motion overwhelming.
Little celebrations
Completing a task or habit now triggers a confetti/emoji/toast celebration — tune it down or off in Settings → Motion above.
dotAi replies can be regenerated
Don't love a reply? Hit regenerate for another take, then flip between every alternate response with the arrow buttons underneath it. Recipe requests ("what can I make with X, Y, Z") now get a direct written-out recipe instead of a tool call.
Contributor experience
Added CONTRIBUTING.md and a bug report issue template, linked from a new README Contributing section.
Also in this release
- Self-service registration, a Browse Spaces screen with admin-approved join requests, and admin-gated space deletion.
- Full Tasks/Projects/Lists suite, Deep Work Mode, Calendar & Routines, Notebooks, and Frame.
- Home Board & a shared Hub, real-time notifications and activity, and scheduled database backups.
- dotAi chat plus five proactive background agents and user-defined Custom Agents, all on a bundled local AI server.
- JWT/bcrypt auth, brute-force lockout, role-based access and a full audit log.
- Auto-detected Desktop, Phone and Tablet layouts, switchable anytime.
Fixes
createListItem (dotAi tool) was inserting into list_items with a space_id column the table doesn't have, throwing whenever dotAi added an item to a list.
Dependencies
- No new dependencies this release.
0.1.2
19 Jul 2026
dotAi is now space-scoped, space deletion no longer throws, curated starter content for new spaces, and a Task Form redesign.
Highlights
dotAi tools are now space-scoped
Every AI tool now threads a resolved spaceId and is guarded by a fail-closed ownsRow() check, closing cross-space read leaks and wrong-space writes. The tool set was also consolidated and each tool now carries a readOnly flag.
Space deletion actually works now
Missing ON DELETE CASCADE on child tables made deleting a space with projects, phases or events throw. Affected tables are rebuilt once on startup to add the cascade, and Frame photo blobs are now purged too.
New-space seeding got a lot more useful
Seeds type-appropriate starter lists, a starter routine (Morning + Wind Down protocols), and a "Welcome to Paperr" onboarding project that tours Tasks, Calendar, Frame, Agents and Settings.
Good Thoughts curated starter collections
A one-click "Stoic Quotes" starter set, importable from the "Set up your apps" step — mirroring Frame's curated-collection import.
Bundled AI server sets itself up on install
A postinstall hook creates the litert-lm Python venv so a fresh clone gets the paperr AI Server with zero manual setup — and never fails the install if Python is absent.
Agent Hub "Run now"
Each pre-built agent gains a Run Now button that bypasses the schedule, and force-run agents now post a friendly "nothing to report" card instead of staying silent.
Task Form redesign
The New/Edit Task modal always uses the two-column layout now, with an assignee header chip, merged priority row, and a unified "Schedule Time Block" pill. Comments show absolute timestamps.
Also added
- Time Progress widget — how much of today / this month / this year has elapsed, as bars or rings.
- SpacePicker consolidated — desktop and tablet share one component.
- CreateSpaceModal polish — portal-rendered emoji picker, non-shifting custom icon pick, case-insensitive delete-confirm.
Fixes
- Admin actions now scope by the space in the URL (
:id) instead of the active-space header, so editing/deleting a non-selected space no longer hits the wrong one.
resolveDate no longer shifts by a day across time zones — dates are built from local Y/M/D.
- Bulletin Board's empty-sections fallback no longer crashes.
Dependencies
- Added
sharp (server) for downscaling curated Frame images.
0.1.1
17 Jul 2026
Bundled local AI, curated Frame starter content, and space deletion.
Highlights
Bundled local AI Server (paperr AI Server)
paperr can now supervise its own local litert-lm serve process as a zero-config fallback LLM — start/stop, live memory, a model registry, Hugging Face import/delete and active-model picker, all from a new Settings panel.
"Set up your apps" onboarding step
The Setup Wizard and space creation now end with an optional step to download the bundled AI model and add a curated Frame collection — each a non-blocking background job.
Curated Frame starter collections
Frame can seed from hand-curated public-domain sets via a background import with progress polling, instead of every space starting empty.
Delete a space
Admins can permanently delete a space from a type-to-confirm Danger Zone, with the client falling back to another space if the active one was removed.
Fixes & chores
- New spaces get correct default Frame settings even on older migrated databases.
- The auto-injected
X-Space-Id header no longer clobbers an explicitly set one.
- Added
tree-kill to cleanly terminate the litert-lm process tree, and start-paperr.sh for macOS/Linux.
0.1
11 Jul 2026
The first tracked release — tasks, projects, lists, calendar, notebooks and an on-device AI assistant, spanning multi-space support, a full agent system, and several new apps and widgets.
Highlights
Multi-space accounts
Self-service registration with optional PIN and avatar, a Browse Spaces screen to discover and request to join other households/teams, and admin approval.
Project Detail overhaul
Board / List / Phases views, assignable phases, milestones, a Watch toggle, one-click Deep Work from any card, and progress rings on project cards.
Deep Work Mode
A single-task, fullscreen focus mode with a Pomodoro/count-up timer, a 15-minute "still working?" check-in, per-task session logging, and a shared heads-down widget.
AI Agent Hub
Automated insight cards from node-cron-driven agents — Morning Brief, Reschedule Advisor, Priority Focus, Workload Spread, Bulletin Board — plus user-defined Custom Agents, all queued for one-click approval.
Hub board & Sticky Notes
A shared household/team landing space with collaborative widgets — Sticky Pads, Our Calendar (a column per member), Shared List, and Our Routines.
Database backups
Manual snapshots or scheduled daily/weekly/monthly backups with retention, plus one-click restore (auto-snapshotting first) and delete.
Also in 0.1
- Tasks decoupled from Lists — organized by Project/Phase, with start/end time blocks and weekday recurrence.
- Good Thoughts, Clock & Alarms, and a personal Notifications feed in the header bell.
- Frame photo storage moved server-side so photos sync across every device.
- Calendar habit tracking & redesign — habit rings, weather, an "up next" rail and a flat Agenda view.
- Home board rebuilt on a shared WidgetBoard, with adaptive Calendar and AI Agent widgets.