PicFast Image Uploader

unlisted

by atbeta

Paste or drop images into the editor to upload them to your PicFast instance and insert the public URL — no PicGo required.

Updated 11d ago
View on GitHub

PicFast Image Uploader

Obsidian plugin that uploads pasted or dropped images to your PicFast instance — no PicGo middleman, no extra config.

Demo

Why

Every other image uploader for Obsidian routes through PicGo / PicList / PicGo-Core. That means three layers of config (Obsidian → PicGo → your image host) and one extra process to keep alive. PicFast already speaks a clean REST API, so this plugin talks to it directly with requestUrl and zero dependencies.

Features

  • 📋 Upload from clipboardCtrl/Cmd+Shift+V or click the ribbon icon
  • 🖱️ Drop or paste — configurable behaviour per paste / drop event (Off / Ask / On)
  • 🪄 Auto-discovery — reads ~/.config/picfast/config.json (Linux/macOS/Windows) and PICFAST_URL / PICFAST_TOKEN env vars; values you set in Obsidian settings always win
  • 🌐 No CORS pain — uses Obsidian's requestUrl, which goes through Node's net stack
  • 🌏 i18n — English + Simplified Chinese

PDF and other non-image drops are intentionally ignored — PicFast is an image host, not a file host, so those fall through to Obsidian's default behaviour (save to vault attachment folder).

Install

From Community Plugins (when approved)

Settings → Community plugins → Browse → search "PicFast Image Uploader" → Install → Enable.

BRAT (internal / pre-release)

  1. Install BRAT from Community plugins.
  2. BRAT settings → "Add Beta plugin" → paste atbeta/picfast-obsidian-plugin.
  3. Enable PicFast Image Uploader in Community plugins.

Manual

  1. Download main.js, manifest.json, styles.css from the latest release.
  2. Create .obsidian/plugins/picfast-image-uploader/ inside your vault.
  3. Drop the three files into that folder.
  4. Settings → Community plugins → enable PicFast Image Uploader.

Configuration

Settings → PicFast:

SettingDescription
Base URLYour PicFast instance root, e.g. https://picfast.example.com. Auto-filled if PICFAST_URL env var is set, or if ~/.config/picfast/config.json exists.
API tokenOptional. Bearer token for authenticated uploads; auto-filled from PICFAST_TOKEN env or CLI config.
Upload behaviorOff (Obsidian default for images), Ask each time (recommended — shows a small menu per paste/drop), Always upload.
Insert formatMarkdown (![](url)), Bare URL, HTML (<img>), BBCode ([img]url[/img]).

Pairing with the picfast CLI

If you have the picfast npm CLI installed globally, run npx picfast config set url https://your-instance and npx picfast config set token … once. The plugin reads the same config file and you never have to type the URL twice.

Build from source

git clone https://github.com/atbeta/picfast-obsidian-plugin
cd picfast-obsidian-plugin
npm install
npm run dev      # watch mode
npm run build    # production build → main.js

License

GPL-3.0-or-later. See LICENSE.

Related

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.