ClaudiaFang65 downloadsUpload images to any S3-compatible storage. Features: WebP conversion, image compression, text & logo watermark with live preview.
Paste an image. It's uploaded, watermarked, and linked — before you lift your finger.
Stop wrestling with image hosting. This Obsidian plugin intercepts every paste and drop, stamps your watermark, converts to WebP, uploads to your own S3/R2 bucket, and drops a clean  right into your note. Zero friction. Your images, your infrastructure, your brand.
The Live Preview shows your text and logo watermark exactly as it will be applied, before you upload a single image.
main.js, manifest.json, and styles.css from the latest release.<vault>/.obsidian/plugins/watermark-bucket-uploader/. link is inserted automatically.For a step-by-step walkthrough on setting up Cloudflare R2 and configuring watermarks, see the Cloudflare R2 & Watermarks Setup Guide.
| Field | Description |
|---|---|
| Access Key | S3 / R2 access key ID |
| Secret Key | S3 / R2 secret access key (stored securely in local storage) |
| Region | Bucket region (auto for Cloudflare R2) |
| S3 Bucket | Your bucket name |
| Bucket Folder | Optional path prefix — supports ${year}, ${month}, ${day}, ${basename} |
| Custom Endpoint | Required for R2 and non-AWS providers |
| Custom Image URL | Public URL base, e.g. your CDN or custom domain |
https://<account-id>.r2.cloudflarestorage.com.auto.Open the Live Preview in settings to see changes in real time.
| Field | Description |
|---|---|
| Text Watermark | Toggle text overlay |
| Text | e.g. © yourdomain.com |
| Font / Size / Style / Color | Full typography control; size 0 = auto (2% of image width) |
| Logo Watermark | Toggle image overlay |
| Logo Path | Vault-relative path, e.g. _assets/logo.png |
| Logo Size / Opacity | Scale (% of image width) and transparency (0–1) |
| Position | Bottom Right, Bottom Left, Bottom Center, or Center |
| Offset X/Y | Fine-tune placement (±% of image dimensions) |
| Preview Res | Canvas resolution for preview accuracy (720p–4K) |
| Action | Result |
|---|---|
Ctrl/Cmd+V in any note |
Intercepts the image, processes it, uploads, inserts  |
| Drag & drop onto the editor | Same pipeline (enable "Upload on drag" in settings) |
Command Palette → Upload image |
Pick a local file to upload manually |
| Auto-upload on create | Any image added to your vault is uploaded and removed locally |
git clone https://github.com/firstsun-dev/watermark-bucket-uploader.git
npm install
npm run dev # watch build
npm run build # type-check + production build
npm run test # vitest suite
npm run lint # eslint
MIT
Created by ClaudiaFang