A modern Obsidian plugin starter template that integrates Svelte for UI development, powered by esbuild and Bun for fast builds and dependency management.
bun.lockb
filesrc/
folder, output to a dist/
folderbun run dev
to watch for changes and auto-export to dist/
release.yml
workflow for building and publishing releasesBefore you begin, make sure you have the following installed:
You can verify your environment with:
bun --version
node --version
Click "Use this template" on GitHub to create your own plugin repository
Install dependencies:
bun install
Build the plugin into the dist/
folder, run:
bun run dev
To test the plugin locally in your Obsidian vault, create a symbolic link:
ln -s /path/to/your/template/dist /path/to/your/vault/.obsidian/plugins/your-plugin-name
e.g.
ln -s /decaf-dev/repos/my-plugin/dist /decaf-dev/desktop/obsidian-development/.obsidian/plugins/my-plugin
Open Obsidian. Navigate to Community Plugins and enable your plugin
To automatically generate plugin bundles when tagging a new release:
Go to your repository on GitHub
Navigate to Settings → Actions → General
Under Workflow permissions, select:
✅ Read and write permissions
Click Save to apply changes
Now, to trigger a release, simply tag a version:
git tag 1.1.0
git push 1.1.0
This will run the release.yml
workflow and generate your plugin build in the release assets.