{"adoption": {"forks": 790, "observed_at": "2026-08-28T04:10:28.740364+00:00", "stars": 9178}, "canonical_url": "https://ross.abutalabs.com/products/laverna", "card": {"archived": false, "artifact_type": "application", "description": "Laverna is a JavaScript note taking application with Markdown editor and encryption support. Consider it like open source alternative to Evernote.", "domain": ["developer-tools", "privacy", "web-development", "frontend"], "enriched": true, "function": ["cryptography", "markdown", "editor", "file-system", "web-scraping"], "health_score": 20, "homepage": "https://laverna.cc/index.html", "language": "JavaScript", "license": "MPL-2.0", "license_family": "copyleft", "maturity": "maintenance", "member_repos": ["Laverna/laverna"], "name": "Laverna/laverna", "platform": ["cross-platform", "windows"], "pushed_at": "2021-05-30T22:18:41+00:00", "repo": "Laverna/laverna", "stars": 9178, "tags": ["note-taking", "evernote-alternative", "client-side-encryption", "offline-first", "indexeddb", "dropbox-sync", "mathjax", "wysiwyg", "web-server", "desktop", "linux", "macos", "nodejs"], "topics": ["peer-to-peer", "note-taking", "laverna", "socket-io", "websocket", "webrtc"], "urls": [], "use_cases": ["take notes with markdown formatting", "open source evernote alternative", "encrypted note taking app", "offline note taking in the browser", "notes without registration", "sync notes to dropbox privately"], "what_it_is": "Laverna is a JavaScript note-taking web application with a Markdown editor and client-side encryption, positioned as an open-source alternative to Evernote. Notes are stored locally in browser databases (IndexedDB/localStorage) with optional sync to Dropbox and RemoteStorage.", "when_to_avoid": ["you need active development, frequent updates, or long-term support (last release 2021)", "you need mobile apps or rich collaboration features", "you want sync beyond Dropbox/RemoteStorage"], "when_to_choose": ["you want a privacy-focused, no-registration note app with client-side encryption", "you prefer Markdown-based notes stored locally in your browser", "you need offline access to your notes"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/laverna", "repo": "Laverna/laverna", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.740364+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:23:21.650285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "046684e84956a46485ba66232bbc54b6f00b45bab92b4bbdc99194f98e32d972", "fetched_at": "2026-08-28T04:10:28.740364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Laverna/laverna"}, {"content_hash": "905df8d5d64eabddb3a474619ba2bf7e720cb3e94a6b71e09b11b6037815396c", "fetched_at": "2026-08-29T08:23:42.433186+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/laverna"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.740364+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:23:21.650285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "046684e84956a46485ba66232bbc54b6f00b45bab92b4bbdc99194f98e32d972", "fetched_at": "2026-08-28T04:10:28.740364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Laverna/laverna"}, {"content_hash": "905df8d5d64eabddb3a474619ba2bf7e720cb3e94a6b71e09b11b6037815396c", "fetched_at": "2026-08-29T08:23:42.433186+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/laverna"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:23:21.650285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "046684e84956a46485ba66232bbc54b6f00b45bab92b4bbdc99194f98e32d972", "fetched_at": "2026-08-28T04:10:28.740364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Laverna/laverna"}, {"content_hash": "905df8d5d64eabddb3a474619ba2bf7e720cb3e94a6b71e09b11b6037815396c", "fetched_at": "2026-08-29T08:23:42.433186+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/laverna"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.740364+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.740364+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.740364+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:23:21.650285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "046684e84956a46485ba66232bbc54b6f00b45bab92b4bbdc99194f98e32d972", "fetched_at": "2026-08-28T04:10:28.740364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Laverna/laverna"}, {"content_hash": "905df8d5d64eabddb3a474619ba2bf7e720cb3e94a6b71e09b11b6037815396c", "fetched_at": "2026-08-29T08:23:42.433186+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/laverna"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.740364+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.740364+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:23:21.650285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "046684e84956a46485ba66232bbc54b6f00b45bab92b4bbdc99194f98e32d972", "fetched_at": "2026-08-28T04:10:28.740364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Laverna/laverna"}, {"content_hash": "905df8d5d64eabddb3a474619ba2bf7e720cb3e94a6b71e09b11b6037815396c", "fetched_at": "2026-08-29T08:23:42.433186+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/laverna"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.740364+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.740364+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.740364+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:23:21.650285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "046684e84956a46485ba66232bbc54b6f00b45bab92b4bbdc99194f98e32d972", "fetched_at": "2026-08-28T04:10:28.740364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Laverna/laverna"}, {"content_hash": "905df8d5d64eabddb3a474619ba2bf7e720cb3e94a6b71e09b11b6037815396c", "fetched_at": "2026-08-29T08:23:42.433186+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/laverna"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.740364+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:28.740364+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:23:21.650285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "046684e84956a46485ba66232bbc54b6f00b45bab92b4bbdc99194f98e32d972", "fetched_at": "2026-08-28T04:10:28.740364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Laverna/laverna"}, {"content_hash": "905df8d5d64eabddb3a474619ba2bf7e720cb3e94a6b71e09b11b6037815396c", "fetched_at": "2026-08-29T08:23:42.433186+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/laverna"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:23:21.650285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "046684e84956a46485ba66232bbc54b6f00b45bab92b4bbdc99194f98e32d972", "fetched_at": "2026-08-28T04:10:28.740364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Laverna/laverna"}, {"content_hash": "905df8d5d64eabddb3a474619ba2bf7e720cb3e94a6b71e09b11b6037815396c", "fetched_at": "2026-08-29T08:23:42.433186+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/laverna"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:23:21.650285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "046684e84956a46485ba66232bbc54b6f00b45bab92b4bbdc99194f98e32d972", "fetched_at": "2026-08-28T04:10:28.740364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Laverna/laverna"}, {"content_hash": "905df8d5d64eabddb3a474619ba2bf7e720cb3e94a6b71e09b11b6037815396c", "fetched_at": "2026-08-29T08:23:42.433186+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/laverna"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:23:21.650285+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "046684e84956a46485ba66232bbc54b6f00b45bab92b4bbdc99194f98e32d972", "fetched_at": "2026-08-28T04:10:28.740364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Laverna/laverna"}, {"content_hash": "905df8d5d64eabddb3a474619ba2bf7e720cb3e94a6b71e09b11b6037815396c", "fetched_at": "2026-08-29T08:23:42.433186+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/laverna"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4607, "days_push": 1921, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}