{"adoption": {"forks": 1157, "observed_at": "2026-08-28T04:10:20.004199+00:00", "stars": 8272}, "canonical_url": "https://ross.abutalabs.com/products/dillinger", "card": {"archived": false, "artifact_type": "application", "description": "The last Markdown editor, ever.", "domain": ["text-editors", "web-development", "documentation", "developer-tools"], "enriched": true, "function": ["editor", "markdown", "web-framework", "documentation", "pdf", "file-upload"], "health_score": 73, "homepage": "https://dillinger.io", "language": "TypeScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["joemccann/dillinger"], "name": "joemccann/dillinger", "platform": ["browser", "self-hosted", "cross-platform"], "pushed_at": "2026-06-21T18:06:55+00:00", "repo": "joemccann/dillinger", "stars": 8272, "tags": ["markdown-editor", "live-preview", "monaco-editor", "cloud-sync", "zen-mode", "wysiwyg-preview", "oauth-integrations", "writing-tool", "web-server", "nodejs"], "topics": ["markdown", "editor", "ide", "blog", "blogging", "writing", "nodejs", "node", "javascript", "md"], "urls": [], "use_cases": ["write markdown with live preview in the browser", "edit README files directly from GitHub", "export markdown to HTML or PDF", "self-host an online markdown editor", "draft LLM prompts and AI content in markdown", "sync notes across Dropbox and Google Drive", "distraction-free writing with zen mode"], "what_it_is": "Dillinger is a browser-based Markdown editor with live preview, built on Next.js and the Monaco editor (VS Code's core). It supports cloud sync with GitHub, Dropbox, Google Drive, OneDrive, and Bitbucket, plus export to Markdown, HTML, and PDF.", "when_to_avoid": ["you need a full IDE or project-wide file management", "you require collaborative real-time multi-user editing", "you need offline desktop app features beyond browser local storage", "you want rich WYSIWYG word-processor formatting"], "when_to_choose": ["you want a free, no-signup online markdown editor with live preview", "you need to edit markdown files stored in GitHub, Dropbox, Google Drive, OneDrive, or Bitbucket", "you prefer VS Code-style editing with Vim/Emacs keybindings in the browser", "you want to self-host a markdown editor with cloud integrations"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/dillinger", "repo": "joemccann/dillinger", "role": "main", "score": 62}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:20.004199+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:28:07.658327+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bcfd442773eccc4f74036d78239ace2f1627490c368c9fc4061bb334d95de421", "fetched_at": "2026-08-28T04:10:20.004199+00:00", "kind": "readme", "missing": false, "url": "https://github.com/joemccann/dillinger"}, {"content_hash": "a0fbb6dee06cb105bb75388ff9061ec1ebe8b944f0240e90c52657cfbc1a81e9", "fetched_at": "2026-08-29T08:28:09.427576+00:00", "kind": "homepage", "missing": false, "url": "https://dillinger.io"}, {"content_hash": "c0f42cfc927b0567aee5d753daad778ac316a69885c8fe5614000b7a7c9d3029", "fetched_at": "2026-08-29T08:28:09.436726+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/features"}, {"content_hash": "f5420051bc0b54296d7230bf0a6eca0da44ee7e2c8420eb913d876c5b630cf31", "fetched_at": "2026-08-29T08:28:09.440346+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/dillinger"}, {"content_hash": "055552fc51d314bb0fcd1c47fa3cd75fc4c55857d8d8039684971fca34c2a26f", "fetched_at": "2026-08-29T08:28:09.438493+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/integrations"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:20.004199+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:28:07.658327+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bcfd442773eccc4f74036d78239ace2f1627490c368c9fc4061bb334d95de421", "fetched_at": "2026-08-28T04:10:20.004199+00:00", "kind": "readme", "missing": false, "url": "https://github.com/joemccann/dillinger"}, {"content_hash": "a0fbb6dee06cb105bb75388ff9061ec1ebe8b944f0240e90c52657cfbc1a81e9", "fetched_at": "2026-08-29T08:28:09.427576+00:00", "kind": "homepage", "missing": false, "url": "https://dillinger.io"}, {"content_hash": "c0f42cfc927b0567aee5d753daad778ac316a69885c8fe5614000b7a7c9d3029", "fetched_at": "2026-08-29T08:28:09.436726+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/features"}, {"content_hash": "f5420051bc0b54296d7230bf0a6eca0da44ee7e2c8420eb913d876c5b630cf31", "fetched_at": "2026-08-29T08:28:09.440346+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/dillinger"}, {"content_hash": "055552fc51d314bb0fcd1c47fa3cd75fc4c55857d8d8039684971fca34c2a26f", "fetched_at": "2026-08-29T08:28:09.438493+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/integrations"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:28:07.658327+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bcfd442773eccc4f74036d78239ace2f1627490c368c9fc4061bb334d95de421", "fetched_at": "2026-08-28T04:10:20.004199+00:00", "kind": "readme", "missing": false, "url": "https://github.com/joemccann/dillinger"}, {"content_hash": "a0fbb6dee06cb105bb75388ff9061ec1ebe8b944f0240e90c52657cfbc1a81e9", "fetched_at": "2026-08-29T08:28:09.427576+00:00", "kind": "homepage", "missing": false, "url": "https://dillinger.io"}, {"content_hash": "c0f42cfc927b0567aee5d753daad778ac316a69885c8fe5614000b7a7c9d3029", "fetched_at": "2026-08-29T08:28:09.436726+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/features"}, {"content_hash": "f5420051bc0b54296d7230bf0a6eca0da44ee7e2c8420eb913d876c5b630cf31", "fetched_at": "2026-08-29T08:28:09.440346+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/dillinger"}, {"content_hash": "055552fc51d314bb0fcd1c47fa3cd75fc4c55857d8d8039684971fca34c2a26f", "fetched_at": "2026-08-29T08:28:09.438493+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/integrations"}], "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:20.004199+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:20.004199+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:20.004199+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:28:07.658327+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bcfd442773eccc4f74036d78239ace2f1627490c368c9fc4061bb334d95de421", "fetched_at": "2026-08-28T04:10:20.004199+00:00", "kind": "readme", "missing": false, "url": "https://github.com/joemccann/dillinger"}, {"content_hash": "a0fbb6dee06cb105bb75388ff9061ec1ebe8b944f0240e90c52657cfbc1a81e9", "fetched_at": "2026-08-29T08:28:09.427576+00:00", "kind": "homepage", "missing": false, "url": "https://dillinger.io"}, {"content_hash": "c0f42cfc927b0567aee5d753daad778ac316a69885c8fe5614000b7a7c9d3029", "fetched_at": "2026-08-29T08:28:09.436726+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/features"}, {"content_hash": "f5420051bc0b54296d7230bf0a6eca0da44ee7e2c8420eb913d876c5b630cf31", "fetched_at": "2026-08-29T08:28:09.440346+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/dillinger"}, {"content_hash": "055552fc51d314bb0fcd1c47fa3cd75fc4c55857d8d8039684971fca34c2a26f", "fetched_at": "2026-08-29T08:28:09.438493+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/integrations"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:20.004199+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:20.004199+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:28:07.658327+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bcfd442773eccc4f74036d78239ace2f1627490c368c9fc4061bb334d95de421", "fetched_at": "2026-08-28T04:10:20.004199+00:00", "kind": "readme", "missing": false, "url": "https://github.com/joemccann/dillinger"}, {"content_hash": "a0fbb6dee06cb105bb75388ff9061ec1ebe8b944f0240e90c52657cfbc1a81e9", "fetched_at": "2026-08-29T08:28:09.427576+00:00", "kind": "homepage", "missing": false, "url": "https://dillinger.io"}, {"content_hash": "c0f42cfc927b0567aee5d753daad778ac316a69885c8fe5614000b7a7c9d3029", "fetched_at": "2026-08-29T08:28:09.436726+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/features"}, {"content_hash": "f5420051bc0b54296d7230bf0a6eca0da44ee7e2c8420eb913d876c5b630cf31", "fetched_at": "2026-08-29T08:28:09.440346+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/dillinger"}, {"content_hash": "055552fc51d314bb0fcd1c47fa3cd75fc4c55857d8d8039684971fca34c2a26f", "fetched_at": "2026-08-29T08:28:09.438493+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/integrations"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:20.004199+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:20.004199+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:20.004199+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:28:07.658327+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bcfd442773eccc4f74036d78239ace2f1627490c368c9fc4061bb334d95de421", "fetched_at": "2026-08-28T04:10:20.004199+00:00", "kind": "readme", "missing": false, "url": "https://github.com/joemccann/dillinger"}, {"content_hash": "a0fbb6dee06cb105bb75388ff9061ec1ebe8b944f0240e90c52657cfbc1a81e9", "fetched_at": "2026-08-29T08:28:09.427576+00:00", "kind": "homepage", "missing": false, "url": "https://dillinger.io"}, {"content_hash": "c0f42cfc927b0567aee5d753daad778ac316a69885c8fe5614000b7a7c9d3029", "fetched_at": "2026-08-29T08:28:09.436726+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/features"}, {"content_hash": "f5420051bc0b54296d7230bf0a6eca0da44ee7e2c8420eb913d876c5b630cf31", "fetched_at": "2026-08-29T08:28:09.440346+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/dillinger"}, {"content_hash": "055552fc51d314bb0fcd1c47fa3cd75fc4c55857d8d8039684971fca34c2a26f", "fetched_at": "2026-08-29T08:28:09.438493+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/integrations"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:20.004199+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:20.004199+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:28:07.658327+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bcfd442773eccc4f74036d78239ace2f1627490c368c9fc4061bb334d95de421", "fetched_at": "2026-08-28T04:10:20.004199+00:00", "kind": "readme", "missing": false, "url": "https://github.com/joemccann/dillinger"}, {"content_hash": "a0fbb6dee06cb105bb75388ff9061ec1ebe8b944f0240e90c52657cfbc1a81e9", "fetched_at": "2026-08-29T08:28:09.427576+00:00", "kind": "homepage", "missing": false, "url": "https://dillinger.io"}, {"content_hash": "c0f42cfc927b0567aee5d753daad778ac316a69885c8fe5614000b7a7c9d3029", "fetched_at": "2026-08-29T08:28:09.436726+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/features"}, {"content_hash": "f5420051bc0b54296d7230bf0a6eca0da44ee7e2c8420eb913d876c5b630cf31", "fetched_at": "2026-08-29T08:28:09.440346+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/dillinger"}, {"content_hash": "055552fc51d314bb0fcd1c47fa3cd75fc4c55857d8d8039684971fca34c2a26f", "fetched_at": "2026-08-29T08:28:09.438493+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/integrations"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:28:07.658327+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bcfd442773eccc4f74036d78239ace2f1627490c368c9fc4061bb334d95de421", "fetched_at": "2026-08-28T04:10:20.004199+00:00", "kind": "readme", "missing": false, "url": "https://github.com/joemccann/dillinger"}, {"content_hash": "a0fbb6dee06cb105bb75388ff9061ec1ebe8b944f0240e90c52657cfbc1a81e9", "fetched_at": "2026-08-29T08:28:09.427576+00:00", "kind": "homepage", "missing": false, "url": "https://dillinger.io"}, {"content_hash": "c0f42cfc927b0567aee5d753daad778ac316a69885c8fe5614000b7a7c9d3029", "fetched_at": "2026-08-29T08:28:09.436726+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/features"}, {"content_hash": "f5420051bc0b54296d7230bf0a6eca0da44ee7e2c8420eb913d876c5b630cf31", "fetched_at": "2026-08-29T08:28:09.440346+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/dillinger"}, {"content_hash": "055552fc51d314bb0fcd1c47fa3cd75fc4c55857d8d8039684971fca34c2a26f", "fetched_at": "2026-08-29T08:28:09.438493+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/integrations"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:28:07.658327+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bcfd442773eccc4f74036d78239ace2f1627490c368c9fc4061bb334d95de421", "fetched_at": "2026-08-28T04:10:20.004199+00:00", "kind": "readme", "missing": false, "url": "https://github.com/joemccann/dillinger"}, {"content_hash": "a0fbb6dee06cb105bb75388ff9061ec1ebe8b944f0240e90c52657cfbc1a81e9", "fetched_at": "2026-08-29T08:28:09.427576+00:00", "kind": "homepage", "missing": false, "url": "https://dillinger.io"}, {"content_hash": "c0f42cfc927b0567aee5d753daad778ac316a69885c8fe5614000b7a7c9d3029", "fetched_at": "2026-08-29T08:28:09.436726+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/features"}, {"content_hash": "f5420051bc0b54296d7230bf0a6eca0da44ee7e2c8420eb913d876c5b630cf31", "fetched_at": "2026-08-29T08:28:09.440346+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/dillinger"}, {"content_hash": "055552fc51d314bb0fcd1c47fa3cd75fc4c55857d8d8039684971fca34c2a26f", "fetched_at": "2026-08-29T08:28:09.438493+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/integrations"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:28:07.658327+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bcfd442773eccc4f74036d78239ace2f1627490c368c9fc4061bb334d95de421", "fetched_at": "2026-08-28T04:10:20.004199+00:00", "kind": "readme", "missing": false, "url": "https://github.com/joemccann/dillinger"}, {"content_hash": "a0fbb6dee06cb105bb75388ff9061ec1ebe8b944f0240e90c52657cfbc1a81e9", "fetched_at": "2026-08-29T08:28:09.427576+00:00", "kind": "homepage", "missing": false, "url": "https://dillinger.io"}, {"content_hash": "c0f42cfc927b0567aee5d753daad778ac316a69885c8fe5614000b7a7c9d3029", "fetched_at": "2026-08-29T08:28:09.436726+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/features"}, {"content_hash": "f5420051bc0b54296d7230bf0a6eca0da44ee7e2c8420eb913d876c5b630cf31", "fetched_at": "2026-08-29T08:28:09.440346+00:00", "kind": "registry_npm", "missing": false, "url": "https://registry.npmjs.org/dillinger"}, {"content_hash": "055552fc51d314bb0fcd1c47fa3cd75fc4c55857d8d8039684971fca34c2a26f", "fetched_at": "2026-08-29T08:28:09.438493+00:00", "kind": "site_page", "missing": false, "url": "https://dillinger.io/integrations"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 88, "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": 5395, "days_push": 73, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 62, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}