mrkeyoor.com_
Mon 07 Sept 18:00 UTC
Webevaluationupdated 07 Sept 2026

notesnook review

Notesnook is an open-source note app that encrypts notes on the device before syncing them across its web, desktop, and mobile clients. It aims to give Evernote-style organization and convenience to people who do not want the service operator reading their notebooks.

trackingstars / 7d
Verdict

Our Notesnook checkout installed 9,107 packages and used 4,480 MB, then its root build failed after 8 seconds because the task runner reported Task "" not found in taskRunner config. The released app is still a credible choice for individuals who want encrypted notes across six platform targets, with a useful free tier and frequent fixes. Contributors and self-hosters should budget for a large monorepo, dependency cleanup, and a separate unsupported server stack.

We ran it

Lab card: what happened when we ran notesnookScreenshot of notesnook (notesnook.com)
Install✓ · 111s9107 packages · 4480 MB
Build✗ · 8s
Testsn/ano test script
Known vulns361 critical · 19 high · 11 moderate · 5 low (npm audit)
Repo2777 files~271,204 lines of source · 114.2 MB · 23 CI workflows

Answers from our run

Does notesnook build from source?

Dependencies installed in 111 seconds (9107 packages), and the build failed. We cloned commit 143892e into a clean Debian container with 3 CPUs and no project-specific setup.

Does notesnook have tests you can run?

Not through a standard command: the project exposes no test script or target that our harness could run.

Does notesnook have known vulnerabilities in its dependencies?

npm audit flagged 36 known advisories in the dependency tree, including 1 critical at the time of our run.

Who should not use notesnook?

Contributors expecting the README's npm workflow to build cleanly: our root build stopped at Task "" not found in taskRunner config. after a successful install.

What are the alternatives to notesnook?

Joplin, Standard Notes, AppFlowy. Our Notesnook checkout installed 9,107 packages and used 4,480 MB, then its root build failed after 8 seconds because the task runner reported `Task "" not found in taskRunner config.

Setup2/5111-second install was huge, and the root build failed
Docs3/5Good product overview; build and package-manager signals conflict
Community5/5Frequent releases and fixes despite a 911-issue queue
Maturity4/5Established clients, but advisories and self-hosting need care

Who it’s for

People who want encrypted notes on Windows, macOS, Linux, Android, iOS, and the web.
Users who want unlimited encrypted notes on a free plan and can live with its attachment and organization limits.
Developers who value a GPLv3 client, inspectable cryptography wrappers, and a public issue tracker.
Experienced operators willing to run the separate sync-server stack without official support.

Who it’s NOT for

Contributors expecting the README's npm workflow to build cleanly: our root build stopped at Task "" not found in taskRunner config. after a successful install.
Small development environments: our install pulled 9,107 packages, occupied 4,480 MB, and npm audit reported 36 known vulnerabilities.
Self-hosters who require a supported appliance: the separate sync-server repository calls self-hosting alpha, requires MongoDB and MinIO, and says it is possible without support.
Teams that require a quiet defect queue before rollout: GitHub showed 911 open issues, including a September 7 report that signup never leaves the loading screen on self-hosted servers.
Organizations that reject any critical dependency advisory in a development tree: our npm audit found 1 critical and 19 high-severity known vulnerabilities.

Setup reality

Our sandbox install succeeded in 111 seconds, adding 9,107 packages and consuming 4,480 MB. The root build failed after 8 seconds with Task "" not found in taskRunner config. Tests were skipped because the harness found no default test script or target. Npm audit reported 36 known vulnerabilities: 1 critical, 19 high, 11 moderate, and 5 low.

Using the hosted app can start with an account, while current mobile releases also document an offline onboarding path. Self-hosting is a separate repository that needs .NET 8, MongoDB, MinIO, several Notesnook services, and a configured API secret. Its README says that route has no support.

The 114.2 MB monorepo covers React, React Native, Electron, shared libraries, and extensions. It has 23 CI workflow files but no Dockerfile or tests directory. Platform work therefore brings web, desktop, or mobile-specific tooling beyond the root npm install.

Version 3.4.7 spans six client targets with device-side encryption

Notesnook covers the web, Windows, macOS, Linux, Android, and iOS from one public monorepo. Its central promise is legible: notes are encrypted on the device with XChaCha20-Poly1305 and keys are derived with Argon2 before data reaches hosted sync. The codebase includes separate web, Electron desktop, and React Native mobile apps alongside shared editor, cryptography, storage, clipping, and theme packages. For someone leaving a service that can inspect notebook contents, that combination deserves a serious look.

The app also has more ordinary note-taking depth than the privacy label suggests. Version 3 introduced internal links, tabs, nested notebooks, merge-conflict handling, and SQLite-backed clients. Desktop builds add automatic local backups, system tray behavior, native encryption and compression, and operating-system key storage. The web clipper and import tools make migration less punishing. Those are practical reasons to choose Notesnook over a plain encrypted text box, especially when several device types must stay in sync.

The free plan permits unlimited notes but only 50 MB of monthly storage

Notesnook's current free tier allows unlimited encrypted notes on unlimited devices. The limits are elsewhere: 50 MB of attachment storage per month, 10 MB per file, 50 notebooks, 50 tags, 10 active reminders, and 100 stored note versions. Paid tiers increase storage and file sizes and remove several organization limits. This is generous for text-heavy personal notes, while image archives and large PDFs will reach the boundary much sooner.

Offline use is a real option, not an undocumented workaround. Mobile v3.4.9 renamed the onboarding skip action to "Use offline" and added a dialog explaining the trade-offs. Sync, account recovery, and cross-device access naturally require more trust in the account path. Export remains available on the free plan, and the pricing page says cancelled accounts keep their notes readable, editable, and exportable. Buyers should test an export before migrating years of material, since portability matters most after something goes wrong.

What happened when we ran it

Our sandbox installed commit 143892e in 111 seconds. Npm added 9,107 packages and left 4,480 MB on disk, which is a striking development footprint for a notes client. The repository itself contained 2,777 files, roughly 271,204 lines of source, and occupied 114.2 MB before that install. It is a multi-client product tree, so the size has a reason, but a contributor still pays the local storage and dependency cost.

The build failed with exit code 1 after 8 seconds. The root script called npm run tx -- build --all --exclude=mobile,web,monograph,theme-builder,vericrypt, then the task runner stopped with Task "" not found in taskRunner config. The log does not say why the task name became empty, so we will not assign a cause. It does establish that the advertised root command did not produce a successful build in our fresh Node 22 container.

No default test script or target was available to the harness, so it skipped tests. The scan also found no tests directory or Dockerfile, alongside 23 CI workflow files. The package manifest does expose narrower web, core, iOS, and Android test commands, but none became the repository-wide test step in this run. Npm audit counted 36 known vulnerabilities: 1 critical, 19 high, 11 moderate, and 5 low. Those findings need triage by reachability and shipped bundle, not dismissal by total alone.

Self-hosting needs .NET 8, MongoDB, and MinIO in another repo

The client repository is only part of a private sync deployment. Streetwriters publishes the server as streetwriters/notesnook-sync-server under AGPLv3. Its source build requires .NET 8 and runs separate API, identity, and messaging projects. The Docker Compose path starts MongoDB, MinIO, and Notesnook services after the operator sets NOTESNOOK_API_SECRET; optional profiles add the themes server, CORS proxy, and inbox API. That is a service stack, not a checkbox in the desktop app.

The server README labels self-hosting alpha and says it is possible without support, with fuller documentation still to be written. That wording should control procurement decisions. An experienced operator can inspect the Compose file, isolate storage, back up MongoDB and MinIO, rotate secrets, and test client endpoint changes. A small team seeking a supported private appliance should wait or choose a product with a narrower deployment contract. Open issue 10335, filed September 7, reports signup hanging against self-hosted servers, which makes a pre-migration trial essential.

Frequent 2026 releases coexist with 911 open issues

The last push was September 7, 2026, and desktop v3.4.7 arrived on August 31 after v3.4.6 on August 17. GitHub showed 911 open issues and 89 open pull requests; 30 issues had closed in the preceding 30 days. That is an active project with a very large public queue, rather than an idle repository. New reports and fixes were arriving on the same day we checked.

Release notes reveal the kind of defects this category carries. Desktop v3.4.7 fixed recovery-key validation for some legacy users and repaired quoted tag and color search. Earlier 2026 releases fixed stored script execution in PDF export and clipped iframe content. Prompt fixes and candid notes are positive maintenance signals, while the underlying bugs justify conservative updates, verified backups, and recovery drills. For users, Notesnook is easier to recommend than our failed source build suggests. For contributors, those 9,107 packages and 36 advisories are part of the product decision.

Alternatives

ProjectWhat it isPick it when
Joplin gh↗A cross-platform note app with Markdown storage, sync choices, and a mature plugin system.pick this instead when Markdown-oriented workflows, plugins, or choosing your own sync target matter most.
Standard NotesAn encrypted notes and files app with open client code and hosted sync.pick this instead when you want a more restrained encrypted notebook and its editor model suits your writing.
AppFlowy gh↗A self-hostable workspace built around documents, databases, projects, and team use.pick this instead when collaborative workspaces and structured project data matter more than Notesnook's privacy-first notebook design.

What people are saying

  1. [github-trending] streetwriters/notesnook

Sources

  1. Notesnook repository
  2. Notesnook README at measured commit
  3. Notesnook Desktop v3.4.7 release
  4. Notesnook Desktop v3.4.7 release notes
  5. Notesnook pricing and plan limits
  6. Notesnook Sync Server self-hosting README
  7. Self-hosted signup loading report

More web reviews

metamask-desktop · kiss-translator · uni-app · motion · saleor · uppy · the whole board →