Plugin for Obsidian that allows to do a lot of things with JavaScript/TypeScript scripts from inside the Obsidian itself
TypeScript
146
1,283 commits
updated Sep 21, 2026
formerly known as
Fix Require Modules, see Rebranding section for more details
An Obsidian plugin that lets you write and run modern JavaScript and TypeScript inside Obsidian — in a note, as a command, on a hotkey, at startup — with a rich module system, bringing you the best practices from the modern development ecosystem.
The documentation is an interactive demo vault. Every feature has a note that explains what it does and why you would want it, followed by a button that runs it for real — so you can read the explanation and execute the example in the same place.
Start reading here — it is plain markdown, so it works on GitHub with nothing installed.
A copy of the vault ships with every release. You can access it via any of the following:
fix-require-modules-demo-vault.zip from the Releases. It unzips into a single fix-require-modules-demo-vault-<version> folder.demo-vault/ in this repository.If you are not sure where to start, three notes cover most of it: Core functions (which of require() / requireAsync() / requireAsyncWrapper() to use), Code buttons (runnable snippets inside a note), and Invocable scripts (turning a script into an Obsidian command).
require() — or await requireAsync(), which also works on mobile.obsidian:// URL.The plugin is available in the official Community Plugins repository.
To install the latest beta release of this plugin (regardless if it is available in the official Community Plugins repository or not), follow these steps:
Add plugin button once and wait a few seconds for the plugin to install.By default, debug messages for this plugin are hidden.
To show them, run the following command in the DevTools Console:
window.DEBUG.enable('fix-require-modules');
For more details, refer to the documentation.
This plugin was formerly known as Fix Require Modules.
The plugin quickly overgrew its original purpose and got way more features than just fixing require() calls. That's why it got a new name.
However, for the backward compatibility, the previous id fix-require-modules is still used internally and you might find it
All notable changes to this project will be documented in the CHANGELOG.
Contributions are welcome — see CONTRIBUTING to get set up.
See my other Obsidian resources.
1,283 commits
TypeScript
99.1%
Plugin for Obsidian that allows to do a lot of things with JavaScript/TypeScript scripts from inside the Obsidian itself
TypeScript
146
1,283 commits
updated Sep 21, 2026
formerly known as
Fix Require Modules, see Rebranding section for more details
An Obsidian plugin that lets you write and run modern JavaScript and TypeScript inside Obsidian — in a note, as a command, on a hotkey, at startup — with a rich module system, bringing you the best practices from the modern development ecosystem.
The documentation is an interactive demo vault. Every feature has a note that explains what it does and why you would want it, followed by a button that runs it for real — so you can read the explanation and execute the example in the same place.
Start reading here — it is plain markdown, so it works on GitHub with nothing installed.
A copy of the vault ships with every release. You can access it via any of the following:
fix-require-modules-demo-vault.zip from the Releases. It unzips into a single fix-require-modules-demo-vault-<version> folder.demo-vault/ in this repository.If you are not sure where to start, three notes cover most of it: Core functions (which of require() / requireAsync() / requireAsyncWrapper() to use), Code buttons (runnable snippets inside a note), and Invocable scripts (turning a script into an Obsidian command).
require() — or await requireAsync(), which also works on mobile.obsidian:// URL.The plugin is available in the official Community Plugins repository.
To install the latest beta release of this plugin (regardless if it is available in the official Community Plugins repository or not), follow these steps:
Add plugin button once and wait a few seconds for the plugin to install.By default, debug messages for this plugin are hidden.
To show them, run the following command in the DevTools Console:
window.DEBUG.enable('fix-require-modules');
For more details, refer to the documentation.
This plugin was formerly known as Fix Require Modules.
The plugin quickly overgrew its original purpose and got way more features than just fixing require() calls. That's why it got a new name.
However, for the backward compatibility, the previous id fix-require-modules is still used internally and you might find it
All notable changes to this project will be documented in the CHANGELOG.
Contributions are welcome — see CONTRIBUTING to get set up.
See my other Obsidian resources.
1,283 commits
TypeScript
99.1%