A post was split to a new topic: How to use cryptomator?
Thanks for that.
@argentum it would be great to see this added to the bottom of the mini FAQ how to develop
in a âhow to debugâ line
Hey @Artemgy, I havenât maintained this FAQ a lot, but this reply from @pjeby should probably help: How to get started with developing a custom Plugin? - #7 by pjeby
-
@zephraph
put together some tools for programmatically working with plugins. Thereâs also an unofficial collection of CLI tools that helps you build plugins for Obsidian. Apparently itâll prompt you for which vault you want to develop in (via a select list; it finds all your vaults), sets up and automatically copies over built code, and prompts to you to install thehot-reload
plugin if you havenât already (itâll do that for you automatically too). Itâll even copy over the manifest file if any changes happen to that.
I tried to make a as-simple-as-possible-but-no-simpler set of instructions for getting started with plugins. (The idea here is to give you everything you need to be able to do things with plugin development, and nothing more than that.)
A rough guide on getting started fiddling with plugins
- Download VS Code
- Set up Node.js and NPM
- Find a simple plugin on GitHub (the sample plugin is a potential one, but it doesnât really do anythingâmaybe look for something that provides functionality similar to what youâd like to build)
- Download the plugin into a folder on your desktop by cloning it
- Compile the downloaded plugin code
- Open your terminal
- Open the folder for the newly-downloaded plugin in the terminal (If you need help with the terminal, search the web for advice for your platformâthe exact commands can be different depending on whether youâre using macOS/Windows/Linux/etc.
- Run
npm i
in the plugin folder - Run
npm run dev
and the terminal will re-compile whenever the .ts file has changes saved
- Open up the pluginâs folder in VS Code
- Open the file
main.ts
and start changing things - Refer to the Obsidian API to understand what you can use
- In VS Code, you can hover over/select API elements and look up their definitions
- Use
console.log(object)
orconsole.log(variable)
to check the state/functioning of your plugin (see debugging below) - Drag the newly-created
main.js
andmanifest.json
files from the plugin folder intoYour-Vault/.obsidian/plugins/Some-Plugin-Folder
- (If loading the plugin for the first time, reloadâor quit and relaunchâObsidian)
- (Unload and re)load the plugin in Obsidianâs Preferences â Community Plugins â the appropriate plugin toggle
- Test it by invoking the features youâve played with
- Debug by using the Console tab in Obsidianâs Developer Tools (open dev tools with cmd/ctrl+shift+i, then select the console tab)
While I am not sensing this is or has been a contentious issue, I was wondering what the general consensus is on Obsidian, down the line, implementing features that have already been dutifully addressed by one or more plugins. While I understand that this likely would not affect a userâs ability to install a that plugin, I can imagine that most people might switch over to using the core feature or core plugin. My question exempts major features that are on the roadmap, as the plugin developer will not have been caught off guard.
I am wondering whether the Obsidian developers might opt to keep certain plugins plugins, when eventually they could be implemented as core without too much difficulty. This would likely support the thriving plugin ecosystem and also not divert the user base of hardworking plugin developers. I realize now that I guess my question may not fit the topic of FAQ, but does anyone else hope that the developers would perhaps work with the plugin developers to implement their work or just hopefully feel perfectly comfortable implementing something as core on their own even if it already has been addressed and hasnât been on the roadmap?
By the way, for the record, I love Obsidian and genuinely feel that the developers will make the right decision. I am just not sure what it is. Regardless of how things go, I think 99% of the community will be with them, and that really does provide a lot of freedom, which evidently is helpful.
Thanks.
hi there, i am not too technical, but i followed your instructions above and can see the plugin in the Community Plugins section of Obsidian but cannot enable it, the button doesnât switch. Besides placing the extracted plugin folder inside the plugins folder, anything i might be missing? thanks
Are you trying to develop your own plugin, or is this for a specific community-made plugin you want to use?
Is it possible to install plugins on an ipad or iphone, or is it only possible in a computer? I canât find the plugin folder on icloud in Files.
You can install community plugins from: Settings > Community Plugins > (Disable Safe Mode) > Browse > {{Search Plugin}} > Install > Enable
Installing manually is not easily possible on iOS, best to use the BRAT plugin for that.
Iâm having exactly the same problem nowâŚdid you find any solutions?