My Plugin

unlisted

by Sébastien Dubois

TODO: Add your plugin description here

15 starsUpdated 1mo agoMIT
View on GitHub

Obsidian Plugin Template (Bun)

A modern Obsidian plugin template using Bun as the package manager and bundler, with TypeScript, Tailwind CSS v4, ESLint, Prettier, and automated release workflows.

Features

  • Bun for fast package management and bundling
  • TypeScript with strict configuration
  • Tailwind CSS v4 for styling
  • ESLint + Prettier for code quality
  • Husky + lint-staged for pre-commit hooks
  • Commitizen + Conventional Commits for standardized commit messages
  • GitHub Actions for CI/CD and automated releases
  • Immer for immutable state management
  • Zod for runtime validation

Getting Started

See TEMPLATE_USAGE.md for detailed instructions on how to use this template to create your own Obsidian plugin.

Quick Start

  1. Click "Use this template" on GitHub to create a new repository
  2. Clone your new repository
  3. Follow the setup instructions in TEMPLATE_USAGE.md
  4. Run bun install to install dependencies
  5. Run bun run dev to start development

Development

See DEVELOPMENT.md for detailed development instructions.

Prerequisites

  • Bun (latest version)
  • Git
  • An Obsidian vault for testing

Commands

CommandDescription
bun installInstall dependencies
bun run devDevelopment build with watch mode
bun run buildProduction build
bun run tsc:watchType check in watch mode
bun run lintRun ESLint
bun run formatFormat with Prettier
bun testRun tests

Contributing

See CONTRIBUTING.md for contribution guidelines.

License

MIT License - see LICENSE for details.

News & Support

To stay up to date about this plugin, Obsidian in general, Personal Knowledge Management and note-taking, subscribe to my newsletter. Note that the best way to support my work is to become a paid subscriber ❤️.

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.