No description
Find a file
Talal Abou Haiba eaac7f0a36 Bump to 0.2.0
2026-01-23 15:21:08 -08:00
.github/workflows Adding release.yml 2024-09-04 21:37:14 -07:00
.editorconfig Initial commit 2024-09-04 21:22:31 -07:00
.eslintignore Initial commit 2024-09-04 21:22:31 -07:00
.eslintrc Initial commit 2024-09-04 21:22:31 -07:00
.gitignore Initial commit 2024-09-04 21:22:31 -07:00
.hotreload Enable .hotreload 2024-09-04 21:31:37 -07:00
.npmrc Initial commit 2024-09-04 21:22:31 -07:00
esbuild.config.mjs Initial commit 2024-09-04 21:22:31 -07:00
LICENSE Adding license 2024-09-04 21:32:34 -07:00
main.ts Minor logging update 2026-01-23 15:17:49 -08:00
manifest.json Bump to 0.2.0 2026-01-23 15:21:08 -08:00
package-lock.json add lodash as dependency 2025-04-27 18:07:34 +02:00
package.json add lodash as dependency 2025-04-27 18:07:34 +02:00
README.md Update README following #13 2025-04-30 22:05:59 -07:00
styles.css Fixed #25 - filtering by tags 2026-01-23 15:13:22 -08:00
tsconfig.json Initial commit 2024-09-04 21:22:31 -07:00
version-bump.mjs Initial commit 2024-09-04 21:22:31 -07:00
versions.json Initial commit 2024-09-04 21:22:31 -07:00

Obsidian ❤️ Paperless-ngx

This plugin allows users to easily insert PDFs from their self-hosted paperless-ngx instance into their Obsidian notes. The PDFs are not stored locally, but are instead externally loaded directly from your paperless-ngx instance.

Features

  • View all documents on your paperless-ngx instance from within the comfort of your Obsidian vault.
  • One-click insertion of one or many documents into your vault.
  • Reduce vault size by using this plugin to remotely reference PDFs within your paperless-ngx instance.

Prerequisites

This assumes you have a working version of paperless-ngx hosted. It does not necessarily need to be remotely accessible. This decision is left up to the reader.

You must also have the amazing PDF++ plugin installed!

How it works

This plugin interacts with your paperless instance to enable seamless viewing of your documents within Obsidian. When you click on a document to import it will generate a share link from paperless and embed it into a external PDF file. Read more here. You can now view that document as though it was natively loaded in your vault, without needing to worry about local or remote storage limits.

Setup

Paperless-ngx

  1. Obtain an authorization token for your account. Open the "My Profile" link in the user dropdown found in the paperless-ngx web UI. Copy the API Auth Token.

Obsidian

  1. Install the plugin.
  2. Install PDF++.
  3. Fill in the following settings:
    • Paperless URL: full url to your paperless-ngx instance. Do not include the trailing /.
    • Paperless authentication token: token you obtained in step 1.
    • Document storage path: location you would like to save references to these PDFs.
  4. Click "Test connection" to confirm connectivity. If any errors appear, you can view them in the console. Open the console using cmd+option+i (MacOS) or ctrl+shift+i (Windows).

Usage

Basic usage

  1. Go to the note you want to insert a document into. The editor view must be in focus.
  2. Open the command palette in Obsidian (ctrl/cmd + p or swipe down on mobile).
  3. Search "Paperless".
  4. Select Paperless: Insert document. Click on the document(s) you want to insert.

Available Commands

The following commands are available for use.

Insert document

The standard insertion command. Please note you must have an open editor focused to use this command. Brings up the document selection modal.

Refresh document cache

The "Insert document" command caches some information such as available documents, tags, and other metadata when it is first run. If you find that new documents or changes are not showing up in the document selection modal, running this command will refresh the caches.

Replace URL with document

This command replaces a url in a note with an embed of the document. To use:

  1. Move your cursor onto a paperless url in a note. The url should be of the form http://ip:port/api/documents/id/preview/ or http://ip:port/documents/id/details
  2. Run this command