MCPcopy Index your code
hub / github.com/FlorianWoelki/obsidian-iconize

github.com/FlorianWoelki/obsidian-iconize @2.14.7

Chat with this repo
repository ↗ · DeepWiki ↗ · release 2.14.7 ↗ · + Follow
411 symbols 999 edges 95 files 5 documented · 1%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Obsidian Iconize

Preview Image

What is it?

This obsidian plugin allows you to add any custom icon (of type .svg) or from an icon pack to anything you want.

Refer to the official documentation for more information: https://florianwoelki.github.io/obsidian-iconize/ about the plugin and its functionalities.

If you like this plugin, feel free to support the development by buying a coffee:

Buy Me A Coffee

Key Highlights

Icons before file/folder name, Icons in notes, Icon above title, Predefined icon packs, Icons in tabs, Customizable settings, Custom rules, Frontmatter integration, Change color of an individual icon,

Development

To customize this project for your needs, you can clone it and then install all dependencies:

$ git clone https://github.com/FlorianWoelki/obsidian-iconize
$ cd obsidian-iconize
$ pnpm i

After the installation, you need to create a env.js file in the root directory. Fill the file with the following content:

export const obsidianExportPath =
  '<path-to-obsidian-vault>/.obsidian/plugins/obsidian-iconize/';

Make sure you create the directory specified in that variable if it does not exist yet.

Afterwards, you can start the rollup dev server by using:

$ pnpm dev

This command will automatically build the neccesary files for testing and developing on every change. Furthermore, it does copy all the necessary files to the plugin directory you specified.

Finally, you can customize the plugin and add it to your plugins.

Extension points exported contracts — how you extend this code

Logger (Interface)
(no doc) [2 implementers]
src/lib/logger.ts
Icon (Interface)
(no doc)
src/icon-pack-manager.ts
IconPack (Interface)
(no doc)
src/icon-packs.ts
FolderIconObject (Interface)
(no doc)
src/main.ts
ExtraMarginSettings (Interface)
(no doc)
src/settings/data.ts
FolderIconObject (Interface)
(no doc)
src/migrations/0003-inheritance-to-custom-rule.ts
InternalPlugin (Interface)
(no doc)
src/@types/obsidian.d.ts
Icon (Interface)
(no doc)
src/ui/icons-picker-modal.ts

Core symbols most depended-on inside this repo

getSettings
called by 158
src/main.ts
saveIconFolderData
called by 31
src/main.ts
getData
called by 22
src/main.ts
warn
called by 18
src/lib/logger.ts
setIconForNode
called by 17
src/lib/api.ts
on
called by 16
src/lib/event/event.ts
info
called by 15
src/lib/logger.ts
setIcon
called by 14
src/internal-plugins/starred.ts

Shape

Method 153
Function 131
Class 76
Interface 49
Enum 2

Languages

TypeScript100%

Modules by API surface

src/icon-pack-manager.ts42 symbols
src/main.ts29 symbols
src/@types/obsidian.d.ts21 symbols
src/lib/logger.ts17 symbols
src/internal-plugins/bookmark.ts14 symbols
src/internal-plugins/outline.ts13 symbols
src/internal-plugins/starred.ts11 symbols
src/ui/icons-picker-modal.ts10 symbols
src/ui/icon-pack-browser-modal.ts10 symbols
src/lib/util/dom.ts10 symbols
src/lib/icon.ts9 symbols
src/lib/event/event.ts9 symbols

For agents

$ claude mcp add obsidian-iconize \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page