obsidian

Solid

Comprehensive guidelines for Obsidian.md plugin development including ESLint rules from eslint-plugin-obsidianmd v0.4.1, TypeScript best practices, memory management, API usage (requestUrl vs fetch), UI/UX standards, popout window compatibility, community.obsidian.md submission process, and Scorecard optimization. Use when working with Obsidian plugins, main.ts files, manifest.json, Plugin class, MarkdownView, TFile, vault operations, or any Obsidian API development.

Data & Documents 175 stars 15 forks Updated 3 days ago MIT

Install

View on GitHub

Quality Score: 88/100

Stars 20%
75
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# Obsidian Plugin Development Guidelines Follow these comprehensive guidelines derived from the official Obsidian ESLint plugin rules, submission requirements, and best practices. ## Getting Started ### Quick Start Tool For new plugin projects, an interactive boilerplate generator is available: - **Script**: `tools/create-plugin.js` in the skill repository - **Command**: Invoke `create-plugin` using your agent's method (`/create-plugin`, `$create-plugin`, or `@create-plugin`) - Generates minimal, best-practice boilerplate with no sample code - Detects existing projects and only adds missing files Recommend the boilerplate generator when users ask how to create a new plugin, want to start a new project, or need help setting up the basic structure. --- ## Rules Reference (eslint-plugin-obsidianmd v0.4.1) ### Submission & Naming | # | Rule | ✅ Do | ❌ Don't | |---|------|--------|----------| | 1 | Plugin ID | Omit "obsidian"; don't end with "plugin" | Include "obsidian" or end with "plugin" | | 2 | Plugin name | Omit "Obsidian"; don't end with "Plugin" | Include "Obsidian" or end with "Plugin" | | 3 | Plugin name | Don't start with "Obsi" or end with "dian" | Start with "Obsi" or end with "dian" | | 4 | Description | Omit "Obsidian", "This plugin", etc. | Use "Obsidian" or "This plugin" | | 5 | Description | End with `.?!)` punctuation | Leave description without terminal punctuation | ### Memory & Lifecycle | # | Rule | ✅ Do | ❌ Don't | |---|------|--------|----------| ...

Details

Author
gapmiss
Repository
gapmiss/obsidian-plugin-skill
Created
9 months ago
Last Updated
3 days ago
Language
JavaScript
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category

Data & Documents Listed

obsidian-best-practices

Guides setting up, configuring, and organizing Obsidian vaults for software engineers — folder structure, plugins, templates, Git backup, Dataview queries, and AI integrations. Also creates and edits Obsidian vault files following best practices for frontmatter schemas, wikilinks, Templater syntax, Dataview code blocks, and Canvas JSON. Use when setting up a new vault, recommending plugins, creating note templates, writing Dataview queries, configuring Git sync, advising on vault organization, or generating Obsidian-compatible Markdown files.

0 Updated 6 days ago
msewell
Data & Documents Listed

obsidian-vault

Create, edit, and audit notes in an Obsidian vault. Handles frontmatter properties, wikilinks, embeds, callouts, tasks, block references, tags, and Mermaid diagrams. Plugin-aware: Dataview queries and inline fields, Tasks emoji syntax, Kanban boards, Meta Bind fields, Templater templates, Bases schemas, and Canvas JSON. ALWAYS-ON: if the working directory is inside an Obsidian vault (a .obsidian/ directory in any ancestor, or a CLAUDE.md identifying the project as vault-embedded), use this skill for ALL .md file operations — including CLAUDE.md, TASKS.md, and session logs — even when Obsidian isn't mentioned. Triggers: "create/edit a note", "update frontmatter", "add tags", "fix the links", "write a Dataview query", "fix this callout", "add a task", "edit my Kanban board", "make a template", or any note-editing task in a vault. NOT for: .md files outside a vault (code-repo READMEs, GitHub issues, static-site content), generic markdown linting, or Obsidian plugin development.

2 Updated 2 days ago
aliasunder
Code & Development Listed

obsidian-cli

Interact with Obsidian vaults using the Obsidian CLI to read, create, search, and manage notes, tasks, properties, and more. Also supports plugin and theme development with commands to reload plugins, run JavaScript, capture errors, take screenshots, and inspect the DOM. Use when the user asks to interact with their Obsidian vault, manage notes, search vault content, perform vault operations from the command line, or develop and debug Obsidian plugins and themes.

1 Updated today
atman-33