Skip to content

Repository files navigation

🔎 QuickCite for Obsidian

License: MIT Obsidian Plugin Version

Instant inline fact-checking and verified markdown citations under your cursor — without breaking flow.

QuickCite turns any selection or thought into a properly cited, fact-checked reference in seconds. Hit the hotkey, search the web, and drop a sequential markdown footnote into your note. Optionally, let an LLM tell you whether the sources actually support your claim — before you cite it.


✨ Features

🔍 Zero-Config Web Search Powered by DuckDuckGo with a resilient 3-layer strategy (HTML → Lite → Instant Answer API). No API keys required — it works out of the box.
🧠 AI Fact-Checking (Optional) Add an OpenRouter key (or point at a local Ollama / OpenAI-compatible endpoint) to get instant confidence scores, verdict notices, and color-coded [✓ Verified] badges on every suggestion.
Auto Sequential Footnotes Inserts [^1], [^2], … inline at your cursor and appends a formatted reference (title + domain link) at the bottom of the note. Never manage footnote numbering by hand again.
🌐 In-Modal Article Reader (⇧↵) Open any highlighted result in your default browser to read the full article — without dismissing the modal — then come back and cite it.
♾️ Infinite Scroll Scroll near the bottom of results and the next page loads automatically. A persistent footer tells you when you've reached the end.
✏️ Editable Query The modal opens pre-filled with your selected text, fully selected — type to replace it instantly, or backspace to refine.

⌨️ Keyboard Shortcuts

Shortcut Action
Ctrl/Cmd + Shift + C Open QuickCite (fact-check selection / insert citation)
/ Navigate search results
Enter Insert footnote citation at cursor
Shift + Enter Open highlighted result in browser
Esc Dismiss the modal

🚀 Installation

From Community Plugins (when published)

  1. Open Settings → Community plugins in Obsidian.
  2. Click Browse and search for QuickCite.
  3. Click Install, then Enable.

Manual Installation

  1. Download main.js, manifest.json, and styles.css from the latest release.
  2. Create the folder <your-vault>/.obsidian/plugins/quickcite/.
  3. Copy the three files into it.
  4. Reload Obsidian and enable QuickCite under Settings → Community plugins.

Building from Source

git clone https://github.com/ismailsaoulaj/quickcite.git
cd quickcite
npm install
npm run build   # type-checks and bundles src/main.ts → main.js
npm run dev     # watch mode for development

Then symlink or copy main.js, manifest.json, and styles.css into your vault's plugin folder.

⚙️ Configuration

QuickCite works with zero configuration for search. Optional settings live under Settings → QuickCite:

Setting Description
OpenRouter API Key Optional. Enables AI fact-checking. Get one free at openrouter.ai. Leave empty to use QuickCite as a pure citation tool.
Model Any OpenRouter model ID (default: openai/gpt-4o-mini).
Base URL Any OpenAI-compatible endpoint. Point it at http://localhost:11434/v1 for local Ollama models, or LM Studio — no cloud required.

When AI fact-checking is active, each result row displays a badge:

  • 🟢 ✓ Verified — sources support the claim
  • 🔴 ✗ Contradicted — sources refute the claim
  • 🟡 ? Unclear — inconclusive evidence

…plus a notice with confidence percentage and a short explanation. Cited footnotes include the verdict inline.

🛠️ How It Works

┌──────────────┐    Ctrl+Shift+C   ┌───────────────────┐
│ Selection /  │ ───────────────▶ │  SuggestModal      │
│ cursor text  │                  │  (editable input)  │
└──────────────┘                  └─────────┬─────────┘
                                            │ debounced query (350 ms)
                              ┌─────────────▼─────────────┐
                              │ DuckDuckGoService         │
                              │ 1. HTML  2. Lite  3. API  │
                              └─────────────┬─────────────┘
                                            │ SearchResult[] { title, url, snippet }
                          ┌─────────────────▼─────────────────┐
                          │ optional LLMService verification   │
                          │ → verdict · confidence · citations │
                          └─────────────────┬─────────────────┘
                                            │ Enter
                                 ┌──────────▼──────────┐
                                 │ [^n] ref at cursor  │
                                 │ [^n]: def at bottom │
                                 └─────────────────────┘

📄 License

MIT © 2026 Ismail Saoulaj

About

Instant inline fact-checking and verified markdown citations for Obsidian. Zero-config DuckDuckGo search + AI verification.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages