Skip to content

Ink

Hand write or draw directly between paragraphs using a digital pen, stylus, or Apple pencil.

The above warnings are based on limited information and might not always be accurate.

Data

IDink
AuthorDale de Silva
FundingSupport the Author
Minimum Obsidian Version1.00.0
Official Release Date2024-03-31
Last update2025-02-14

Last Refresh

Obsidian Stats last refreshed the data behind this page on Jul 13, 2026.

Community plugin snapshotJul 13, 2026
Repository clonelast successful checkout Jun 3, 2026
Release acquisitionrelease metadata checked Jun 22, 2026; existing successful main.js cache reused

Quick Links

Changes

DateChanged PropertyOld ValueNew Value
2024-03-31Plugin Added
2024-06-02descriptionHand write or draw with a stylus directly between paragraphs in your notes.Hand write or draw directly between paragraphs using a digital pen, stylus, or Apple pencil. Useful for handwriting, sketches, scribbles, or even math equations and scientific notation. Runs on the tldraw framework and drawing provides an infinite canvas.
2026-05-12authorDale de Silvadaledesilva
2026-05-12descriptionHand write or draw directly between paragraphs using a digital pen, stylus, or Apple pencil. Useful for handwriting, sketches, scribbles, or even math equations and scientific notation. Runs on the tldraw framework and drawing provides an infinite canvas.Hand write or draw directly between paragraphs using a digital pen, stylus, or Apple pencil.
2026-05-16authordaledesilvaDale de Silva

Repository Data

LicenseMIT in package.json
Unrecognized in LICENSE file
Package Managernpm
Uses TypescriptYes
Installed Bundlersesbuild
Installed Testing FrameworksJest
Has Test FilesYes
Latest Release main.js Size2.60 MB
Detected ES VersionES2020
Probably MinifiedNo
main.js API Findings9 disclosures
Uses BRAT beta releasesYes
Dependencies@reduxjs/toolkit, @tldraw/assets, @tldraw/tldraw, canvg, chalk, classnames, esbuild-plugin-copy, esbuild-sass-plugin, jotai, nanoid, react, react-dom, react-inlinesvg, react-redux, semver
Dev Dependencies@babel/core, @babel/preset-env, @babel/preset-typescript, @jest/globals, @types/node, @types/react, @types/react-dom, @types/semver, @typescript-eslint/eslint-plugin, @typescript-eslint/parser, babel-jest, builtin-modules, esbuild, esbuild-plugin-svg, esbuild-svgr-plugin, jest, obsidian, ts-node, tslib, typescript

main.js API Findings

These conservative findings come from static analysis of the latest release main.js. The table includes warnings and high-confidence informational findings; lower-confidence informational findings are omitted to reduce false positives. Warnings indicate usage of potentially risky APIs, but such APIs can be used safely if handled with care.

DisclosureDetected From
Clipboard AccessReads or writes clipboard data
Dynamic Code Or Remote CodeEvaluates dynamic code or injects scripts
Full Vault AccessEnumerates vault files
Global Handlers Or TimersRegisters events, DOM handlers, or intervals
Network AccessUses browser network APIs
Private Network AccessReferences localhost or private-network addresses
Process Or Shell AccessUses Node process or subprocess APIs
Worker UsageUses Worker APIs
Workspace LayoutRegisters or manipulates workspace views and panes
FindingTypeConfidenceEvidence
Evaluates dynamic code or injects scriptsWarningHighdynamic_code:function_constructor (1)
Uses Node process or subprocess APIsWarningHighprocess.env (7)
References localhost or private-network addressesWarningMediumlocalhost (1)
Reads or writes clipboard dataInfoHighnavigator.clipboard.read (3), navigator.clipboard.write (1), navigator.clipboard.writeText (3)
Uses persistent browser storageInfoHighcaches.open (1), indexedDB.open (1), localStorage.getItem (2), localStorage.setItem (2)
Uses Worker APIsInfoHighWorker (1)
Registers events, DOM handlers, or intervalsInfoHighrequestAnimationFrame (7), setTimeout (31)
References URLs or constructs URL objectsInfoHighhttp:// (44), https:// (48), URL (11)
Uses browser network APIsInfoHighfetch (1)
Persists plugin settings or dataInfoHighthis.loadData (1), this.saveData (1)
Registers plugin settings UIInfoHighSetting (20), obsidian.Setting (20)
Accesses Obsidian vault APIsInfoHighapp.vault (2)
Enumerates vault filesInfoHighapp.vault.getFiles (2)
Registers or manipulates workspace views and panesInfoHighregisterView (2)

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 5536 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

VersionRelease DateNote
0.1.02024-03-30Released while not listed
0.1.152024-04-04None
0.1.172024-04-06None
0.1.1722024-04-06None
0.1.182024-04-14Prerelease
0.1.1812024-04-17Prerelease
0.1.192024-04-27Prerelease
0.1.1922024-05-12None
0.2.02024-05-26Prerelease
0.2.12024-06-01None
0.2.22024-06-02None
0.2.32024-06-23Prerelease
0.2.42024-07-06None
0.2.52024-07-27Prerelease
0.2.62024-08-01None
0.3.02024-09-11Prerelease
0.3.12024-12-04Prerelease
0.3.2-beta2025-01-03Prerelease
0.3.32025-01-05None
0.3.42025-02-14None
0.4.02026-01-15Prerelease
0.5.0-beta2026-06-04Prerelease
0.5.1-beta2026-06-22Prerelease

Blacklisted versions are versions that are known to cause major issues or contain security concerns and have thus been blacklisted by the Obsidian team. Obsidian will disable plugins on startup whose installed version is blacklisted. Released while not listed versions happened outside the period where the plugin was present in the community plugin list and are excluded from aggregate release statistics.