Note Image Manager
approvedby DXShelley
image workflow for Obsidian. Import, rename, convert, compress, edit, and recover images safely. - This plugin has not been manually reviewed by Obsidian staff.
中文 | English
Note Image Manager
Note Image Manager is an image-management plugin for Obsidian. It keeps image import, naming, conversion, compression, lightweight editing, gallery browsing, and recovery in one controlled workflow.
Current version: 4.0.12
Minimum Obsidian version: 1.12.4
Release target: desktop plugin, with isDesktopOnly set to true in manifest.json
Highlights
- Automatically handles pasted images, stores them in a configurable folder, and generates file names from variable templates.
- Supports note-scoped managed folders such as
./assets/${noteFileName}. - Imports image sources from
URL,file://, anddata:image/...;base64,...into the local vault and rewrites them as local image links. - Runs external-image import, format conversion, compression, link cleanup, and orphan-image cleanup against the current note, current folder, or whole vault.
- Supports Obsidian Wiki links and standard Markdown links, with encoded, readable-wrapped, and automatic path-output strategies.
- Adds image context-menu actions for copy, compress, convert, rotate, flip, and drag-to-crop.
- Provides current-image, note-level, and folder-level galleries with filtering, sorting, and grid / list views.
- Persists recovery transactions for image and Markdown changes, with undo / redo support for recent Note Image Manager operations.
- Supports Simplified Chinese and English in the settings page and feature-status panel, with Chinese as the default.
Installation
Community Marketplace
After marketplace approval, install it from Settings -> Community plugins by searching for Note Image Manager.
Manual Install
- Open Releases.
- Download
manifest.json,main.js, andstyles.cssfor the target version, or downloadnote-image-manager.zip. - Place the files in your vault under
.obsidian/plugins/note-image-manager/. - Enable Note Image Manager in Settings -> Community plugins.
Documentation
| Goal | Document |
|---|---|
| Browse the full documentation set | Docs Index |
| Learn commands, settings, galleries, and recovery | User Guide |
| Configure naming and folder variables | Variable Reference |
| Understand layering, runtime flow, and module boundaries | Architecture |
| Review core service and batch API summaries | API Reference |
| Run manual validation and regression checks | Test Cases |
| Prepare community submission and GitHub Releases | Release Checklist |
| Read version history | Changelog |
Disclosure And Limits
- The plugin does not collect telemetry, does not include ads, and does not silently upload vault content.
- Remote images are downloaded only when the relevant external-image import flow is enabled or explicitly triggered by the user.
file://local-image import runs only when the user explicitly pastes or imports such sources.- Formats such as
GIF,SVG,TIFF,HEIC, andAVIFuse layered compatibility: they may be recognized, imported, or accepted as conversion input, but that does not guarantee every in-place edit or compression path is stable. - Compression history and recovery snapshots are stored under
.obsidian/plugins/note-image-manager/so the plugin can avoid duplicate compression and support undo / redo. - Vault-wide conversion, compression, and orphan-image cleanup commands require confirmation before running.
Development
Node.js 22 is recommended to match the CI and Release workflows.
npm install
npm run validate
npm run build
Common commands:
npm run dev: development build.npm run type-check: TypeScript type check.npm run lint: ESLint check.npm run test: Vitest unit tests.npm run validate: type check, lint, and tests.
See Contributing for the contribution workflow.
Repository Layout
src/app plugin runtime wiring and feature catalog
src/core settings, events, registry, recovery, and compression history
src/features rename, compress, convert, preview, editor, gallery, batch, and related modules
src/services image processing, file management, variable resolution, and link formatting
src/ui settings tab and modals
src/utils platform, path, link, validation, and Obsidian compatibility helpers
docs user, development, testing, and release documentation
website GitHub Pages website
tests Vitest unit tests
Release
- Keep
manifest.json.version,package.json.version,versions.json, and the website version copy aligned. - The Git tag must exactly match
manifest.json.version, for example4.0.4, without avprefix. - GitHub Release assets should include
manifest.json,main.js,styles.css, andnote-image-manager.zip. - See the Release Checklist for the full checklist.
Acknowledgements
This project is built on the Obsidian plugin API and is developed with TypeScript, esbuild, ESLint, and Vitest.
Image handling and product boundaries were informed by parts of piexifjs, Custom Attachment Location, and obsidian-image-converter. Mentioning a reference project is not a promise of full compatibility.
Support The Project
If Note Image Manager saves you time managing images, you can support ongoing maintenance through WeChat Pay or Alipay:
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.