Note Content Studio
Turn notes into WeChat Official Account articles, Xiaohongshu image cards, and Feishu docs, with live preview. - 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 | note-content-studio |
| Author | runnerback |
| Funding | Support the Author |
| Minimum Obsidian Version | 1.13.0 |
| Official Release Date | 2026-09-17 |
| Last update | 2026-10-08 |
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 Oct 12, 2026 |
| Release acquisition | release metadata checked Oct 12, 2026; latest main.js acquired |
Quick Links
- GitHub Repo
- View in Obsidian
- View on Obsidian Community
- View on the Obsidian Hub
- Author Website
- Support the Author
Changes
| Date | Changed Property | Old Value | New Value |
|---|---|---|---|
| 2026-09-17 | Plugin Added | ||
| 2026-09-20 | Plugin Removed | ||
| 2026-09-24 | Plugin Re-Added | ||
| 2026-09-28 | Plugin Removed | ||
| 2026-10-08 | Plugin Re-Added |
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 | 1.35 MB |
| Detected ES Version | ES2018 |
| Probably Minified | Yes |
| main.js API Findings | 15 disclosures |
| Uses BRAT beta releases | No |
| Dependencies | fflate, html-to-image |
| Dev Dependencies | @eslint/js, @microsoft/eslint-plugin-sdl, @types/node, @typescript-eslint/utils, @vitest/coverage-v8, esbuild, eslint, eslint-plugin-obsidianmd, globals, highlight.js, jsdom, markdown-it, obsidian, tslib, typescript, vitest, ws |
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 |
|---|---|
| Clipboard Access | Reads clipboard data, Writes clipboard data |
| Full Vault Access | Enumerates vault files |
| Global Handlers Or Timers | Registers global input handlers |
| Markdown Processing | Renders markdown |
| Metadata Access | Reads Obsidian metadata cache, Registers metadata cache events |
| Network Access | Constructs or references URLs, References authorization or user-agent headers, References private-network addresses, References service or SDK endpoints, Uses Obsidian request APIs, Uses browser network request APIs |
| Private Network Access | References private-network addresses |
| Process Or Shell Access | Reads Node process environment or platform metadata |
| Third Party Services | References service or SDK endpoints |
| User Interface Access | 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 |
| Worker Usage | Starts or loads background JavaScript, Uses shared-memory concurrency APIs |
| Workspace Access | Accesses the active file, Registers Obsidian workspace events |
| Workspace Layout | Manages workspace leaves |
| Finding | Type | Confidence | Evidence |
|---|---|---|---|
| Starts or loads background JavaScript | Warning | Definite | constructor of "Worker" |
| Reads clipboard data | Info | Definite | member_call of "navigator.clipboard.readText" |
| Writes clipboard data | Info | Definite | member_call of "navigator.clipboard.write" (3), member_call of "navigator.clipboard.writeText" (2) |
| Registers global input handlers | Info | Possible | member_call of "document.addEventListener" (2) |
| Uses browser network request APIs | Info | Definite | call of "fetch" (4) |
| Uses shared-memory concurrency APIs | Info | Definite | member_call of "Atomics.add" (3) |
| References authorization or user-agent headers | Info | Definite | string_contains of "authorization" (3), string_contains of "api-key" (4), string_contains of "x-api-key", string_contains of "user-agent" |
| References private-network addresses | Info | Definite | string_contains of "private network address" (26) |
| References service or SDK endpoints | Info | Definite | string_contains of "api.openai.com" (3) |
| Constructs or references URLs | Info | Definite | string_contains of "http://" (12), string_contains of "https://" (70), constructor of "URL" (12), member_call of "URL.createObjectURL" (6), member_call of "URL.revokeObjectURL" (11) |
| Reads Node process environment or platform metadata | Info | Definite | member_read of "process.env" (2) |
| Renders markdown | Info | Definite | member_call of "obsidian" |
| Reads Obsidian metadata cache | Info | Definite | member_read of "app.metadataCache" (6), member_call of "app.metadataCache.getFirstLinkpathDest" |
| Registers metadata cache events | Info | Possible | member_call of "app.metadataCache.on" |
| Uses Obsidian request APIs | Info | Definite | call of "requestUrl" |
| Uses Obsidian modal UI | Info | Definite | class of "obsidian.Modal" (5) |
| Uses Obsidian notices | Info | Definite | constructor of "obsidian.Notice" (21) |
| Accesses Obsidian vault APIs | Info | Definite | member_read of "app.vault" (15) |
| Enumerates vault files | Info | Definite | member_call of "app.vault.getAbstractFileByPath" |
| Registers vault events | Info | Possible | member_call of "app.vault.on" (2) |
| Reads vault files | Info | Definite | member_call of "app.vault.cachedRead", member_call of "app.vault.read" |
| Accesses attachment resource paths | Info | Definite | member_call of "app.vault.adapter.getResourcePath", member_call of "app.vault.getResourcePath" (2) |
| Accesses the active file | Info | Definite | member_call of "app.workspace.getActiveFile" |
| Registers Obsidian workspace events | Info | Possible | member_call of "app.workspace.on" (3) |
| Manages workspace leaves | Info | Definite | member_call of "app.workspace.setActiveLeaf", member_call of "app.workspace.getLeavesOfType" (4), member_call of "app.workspace.getRightLeaf" |
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 58201 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 |
|---|---|---|
| 3.11.2 | 2026-09-18 | None |
| 3.11.6 | 2026-09-18 | None |
| 3.11.7 | 2026-09-18 | None |
| 3.11.9 | 2026-09-19 | None |
| 3.11.10 | 2026-09-25 | None |
| 3.11.11 | 2026-09-25 | None |
| 3.11.12 | 2026-09-25 | None |
| 3.11.14 | 2026-09-25 | None |
| 3.11.15 | 2026-09-25 | None |
| 3.11.17 | 2026-09-26 | None |
| 3.12.0 | 2026-10-09 | None |
| 3.12.1 | 2026-10-09 | None |
| 3.12.2 | 2026-10-10 | None |