Reading Room
Read PDFs, EPUBs, articles and video transcripts inside Obsidian and clip what matters into your notes — a passage becomes a quote, a dragged box becomes an image, and you write underneath it. - This plugin has not been manually reviewed by Obsidian staff.
The above warnings are based on limited information and might not always be accurate.
Data
| ID | democratised-read-it-later |
| Author | AJ |
| Minimum Obsidian Version | 1.13.0 |
| Official Release Date | 2026-08-19 |
| Last update | 2026-08-28 |
Last Refresh
Obsidian Stats last refreshed the data behind this page on Oct 27, 2026.
| Community plugin snapshot | Oct 26, 2026 |
| Repository clone | last successful checkout Sep 1, 2026 |
| Release acquisition | release metadata checked Sep 1, 2026; latest main.js acquired |
Quick Links
Changes
| Date | Changed Property | Old Value | New Value |
|---|---|---|---|
| 2026-08-19 | Plugin Added | ||
| 2026-08-20 | Plugin Removed | ||
| 2026-08-20 | Plugin Re-Added | ||
| 2026-08-20 | name | Democratised Read It Later | Reading Room |
Repository Data
| License | MIT in package.json MIT in LICENSE file |
| Package Manager | npm |
| Uses Typescript | Yes |
| Installed Bundlers | esbuild |
| Installed Testing Frameworks | Vitest |
| Has Test Files | Yes |
Latest Release main.js Size | 284 KB |
| Detected ES Version | ES2020 |
| Probably Minified | Yes |
| main.js API Findings | 20 disclosures |
| Uses BRAT beta releases | No |
| Dependencies | @types/diff-match-patch, @types/nunjucks, diff-match-patch, nunjucks, obsidian-youtube-transcript |
| Dev Dependencies | @eslint/js, @types/node, esbuild, eslint, eslint-plugin-obsidianmd, happy-dom, obsidian, pdfjs-dist, typescript, typescript-eslint, vitest |
main.js API Findings
These findings come directly from Glass Lint's JavaScript and Obsidian rule catalogs applied to the latest release main.js. The confidence column is Glass Lint's definite/possible match certainty.
| Disclosure | Rule Descriptions |
|---|---|
| Browser Environment Access | Reads browser environment data |
| Clipboard Access | Reads clipboard data |
| Dynamic Code Or Remote Code | Evaluates dynamic code |
| Full Vault Access | Enumerates vault files |
| Global Handlers Or Timers | Registers global input handlers |
| Lifecycle Events | Registers Obsidian lifecycle events |
| Markdown Processing | Registers markdown postprocessors, Uses markdown link helpers |
| Metadata Access | Extracts tags, links, embeds, blocks, or headings, Reads Obsidian metadata cache, Reads cached frontmatter, Updates frontmatter through Obsidian APIs |
| Network Access | Constructs or references URLs, References authorization or user-agent headers, Uses browser network request APIs |
| Node Filesystem Access | Uses Node filesystem and path APIs |
| Platform Branching | Checks Obsidian platform flags |
| Plugin Management | Accesses other plugins |
| Plugin Storage Access | Reads plugin data, Writes plugin data |
| Process Or Shell Access | Starts Node subprocesses |
| User Interface Access | Registers Obsidian views, Registers commands, Registers plugin settings UI, Uses Obsidian menus, Uses Obsidian modal UI, Uses Obsidian notices |
| Vault Access | Accesses Obsidian vault APIs, Accesses attachment resource paths, Registers vault events |
| Vault Read | Reads vault files |
| Vault Write | Deletes or trashes vault files, Updates frontmatter through Obsidian APIs, Writes vault files |
| Workspace Access | Accesses the active file, Registers Obsidian workspace events |
| Workspace Layout | Manages workspace leaves, Opens files through the workspace |
| Finding | Type | Confidence | Evidence |
|---|---|---|---|
| Evaluates dynamic code | Warning | Definite | constructor of "Function", call of "Function", call of "eval" |
| Starts Node subprocesses | Warning | Definite | import of "node:child_process" (2) |
| Deletes or trashes vault files | Warning | Definite | member_call of "app.fileManager.trashFile" (3) |
| Reads clipboard data | Info | Definite | member_call of "navigator.clipboard.readText" |
| Reads browser environment data | Info | Definite | member_read of "navigator.userAgent" |
| Registers global input handlers | Info | Definite | member_call of "document.addEventListener" (4) |
| Uses browser network request APIs | Info | Definite | call of "fetch", constructor of "XMLHttpRequest" |
| References authorization or user-agent headers | Info | Definite | string_contains of "api-key", string_contains of "x-api-key", string_contains of "user-agent" |
| Constructs or references URLs | Info | Definite | constructor of "URL" (5), string_contains of "https://" (11), string_contains of "http://" (2), member_call of "URL.createObjectURL", member_call of "URL.revokeObjectURL", constructor of "URLSearchParams" |
| Uses Node filesystem and path APIs | Info | Definite | import of "node:fs/promises" (3), import of "node:fs" (2) |
| Updates frontmatter through Obsidian APIs | Info | Definite | member_call of "app.fileManager.processFrontMatter" |
| Registers Obsidian lifecycle events | Info | Definite | member_call of "obsidian.Plugin" (6) |
| Uses markdown link helpers | Info | Definite | member_call of "obsidian" |
| Registers markdown postprocessors | Info | Definite | member_call of "obsidian.Plugin" |
| Reads Obsidian metadata cache | Info | Definite | member_call of "app.metadataCache.getFileCache" (2), member_read of "app.metadataCache" (2) |
| Extracts tags, links, embeds, blocks, or headings | Info | Definite | member_read of "app.metadataCache.getFileCache.frontmatter" |
| Reads cached frontmatter | Info | Definite | member_read of "app.metadataCache.getFileCache.frontmatter" |
| Checks Obsidian platform flags | Info | Definite | member_read of "obsidian" (7) |
| Accesses other plugins | Info | Definite | member_read of "app.plugins.plugins" |
| Reads plugin data | Info | Definite | member_call of "obsidian.Plugin" |
| Writes plugin data | Info | Definite | member_call of "obsidian.Plugin" (2) |
| Registers commands | Info | Definite | member_call of "obsidian.Plugin" (15) |
| Uses Obsidian menus | Info | Definite | member_call of "obsidian.Menu" (4) |
| Uses Obsidian modal UI | Info | Definite | class of "obsidian.Modal" (6) |
| Uses Obsidian notices | Info | Definite | constructor of "obsidian.Notice" (47) |
| Registers plugin settings UI | Info | Definite | class of "obsidian.PluginSettingTab", member_call of "obsidian.Plugin" |
| Accesses Obsidian vault APIs | Info | Definite | member_read of "app.vault" (65) |
| Enumerates vault files | Info | Definite | member_call of "app.vault.getAbstractFileByPath" (21), member_call of "app.vault.getMarkdownFiles" (2), member_call of "app.vault.getFiles" (2), member_call of "app.vault.getFileByPath" (6) |
| Registers vault events | Info | Definite | member_call of "app.vault.on" (9) |
| Reads vault files | Info | Definite | member_call of "app.vault.read" (12), member_call of "app.vault.readBinary" |
| Accesses attachment resource paths | Info | Definite | member_call of "app.vault.getResourcePath", string_contains of "obsidian://" |
| Writes vault files | Info | Definite | member_call of "app.vault.create" (4), member_call of "app.vault.modify" (2), member_call of "app.vault.createFolder" (2), member_call of "app.vault.createBinary" (2) |
| Registers Obsidian views | Info | Definite | member_call of "obsidian.Plugin" (2) |
| Accesses the active file | Info | Definite | member_call of "app.workspace.getActiveFile" (4) |
| Registers Obsidian workspace events | Info | Definite | member_call of "app.workspace.on" |
| Manages workspace leaves | Info | Definite | member_call of "app.workspace.getLeavesOfType" (6), member_call of "app.workspace.getLeaf" (5), member_call of "app.workspace.revealLeaf" (3), member_call of "app.workspace.getRightLeaf" |
| Opens files through the workspace | Info | Definite | member_call of "app.workspace.openLinkText", member_call of "app.workspace.getLeaf.openFile" (3) |
The above data may not be accurate and contain errors. For more information refer to the page about data collection.
Lines of Code
The plugin has a total of 17798 lines of code. The following chart shows the lines of code split by programming language.
Downloads
The following chart shows the total number of downloads of the plugin over time. The second chart shows the delta of downloads per week, which is the number of new downloads per week. New version releases are marked with vertical lines.
Version History
| Version | Release Date | Note |
|---|---|---|
| 0.1.0 | 2026-08-24 | None |
| 0.3.0 | 2026-08-24 | None |
| 0.4.0 | 2026-08-20 | None |
| 0.5.0 | 2026-08-22 | None |
| 0.6.0 | 2026-08-22 | None |
| 0.7.0 | 2026-08-24 | None |
| 0.8.0 | 2026-08-22 | None |
| 0.9.0 | 2026-08-22 | None |
| 0.10.0 | 2026-08-22 | None |
| 0.11.0 | 2026-08-27 | None |
| 0.12.0 | 2026-08-28 | None |
| 0.13.0 | 2026-08-29 | None |