The Image Embedder plugin streamlines the process of adding images from the web into your notes by automatically detecting image URLs on paste, downloading the images, and embedding them in Markdown format. It supports custom attachment folders, flexible filename formatting using placeholders like date or timestamp, and optional confirmation prompts for better control. Users can also choose to display the saved file path as feedback. This plugin is particularly useful for researchers, bloggers, or students who frequently gather visual content from external sources and want to keep their vault self-contained and organised.
Image Embedder for Obsidian
A plugin for Obsidian that automatically downloads and embeds images from URLs when pasting them into your notes.
Demo
Features
- Automatically detects image URLs when pasting
- Downloads and saves images to your vault
- Configurable attachment folder
- Customizable filename format with placeholders
- Optional confirmation before embedding
- Shows file path in success messages (optional)
Usage
- Copy an image URL to your clipboard
- Paste it into your note
- If the URL is an image, the plugin will:
- Show a confirmation dialog (if enabled)
- Download the image
- Save it to your configured attachment folder
- Insert a markdown link to the image
Settings
- Confirm before embedding: Show a confirmation dialog before downloading and embedding images
- Show file path: Show the saved file path in the success notice
- Attachment folder: Folder where downloaded images will be saved (relative to vault root)
- Filename format: Format for saved filenames with placeholders:
{name}
: Original filename{timestamp}
: ISO timestamp (if enabled){date}
: Current date
- Use timestamp: Add timestamp to filenames for uniqueness
Development
This plugin is built using the Obsidian Plugin API.
Building from source
- Clone this repository
- Install dependencies:
npm install
- Build the plugin:
npm run build
- The built plugin will be in the
dist
folder
License
MIT License - see LICENSE file for details
Support
If you encounter any issues or have suggestions, please open an issue on GitHub.