Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Publish to VPS

Jonathan ROUQUETTEJonathan ROUQUETTE49 downloads

Publish selected vault folders to your personal VPS with property-based filtering and remote upload.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates9

Publish selected vault folders to your personal VPS with property-based filtering and remote upload.

Features

  • Property-based file filtering (include/exclude by frontmatter properties)
  • Remote upload via configurable VPS endpoint
  • Incremental sync — only changed files are uploaded
  • Desktop-only (requires Node.js file system access)

Network use disclosure

This plugin uploads the notes and assets you explicitly select for publication to your own self-hosted VPS endpoint, which you configure in the plugin settings. No other remote service is contacted: no third-party servers, no telemetry, no analytics, no ads. No account or payment is required. The plugin does not access files outside your vault.

Self-hosted server (required)

The plugin publishes to a server you host. A single Docker image ships everything (Node API + Angular site):

docker run -d --name obsidian-vps-publish \
  -p 127.0.0.1:3000:3000 \
  -e API_KEY=change-me \
  -v $(pwd)/content:/content \
  -v $(pwd)/assets:/assets \
  jorouquette/obsidian-vps-publish:latest

Then point the plugin at your endpoint (Base URL + API key). Full production guide (nginx TLS front, firewall, auto-updates): VPS setup guide (version française).

The image and the plugin are versioned in lockstep: image X.Y.Z pairs with plugin X.Y.Z.

Installation

From Obsidian Community Plugins

Search for "Publish to VPS" in Obsidian's community plugin browser.

Manual

  1. Download main.js, manifest.json, and styles.css from the latest release
  2. Copy them into <your-vault>/.obsidian/plugins/vps-publish/
  3. Enable the plugin in Obsidian settings

Development

Prerequisites

  • Node.js 22+
  • npm

Setup

git clone https://github.com/JoRouquette/vps-publish.git
cd vps-publish
npm install

Commands

npm run dev          # Watch mode (incremental build)
npm run build        # Production build → main.js
npm run lint         # ESLint
npm run lint:fix     # ESLint with auto-fix
npm run test         # Jest
npm run test:coverage  # Jest with coverage report

Project structure

src/                  # Plugin source (Obsidian entry point, settings, UI)
libs/
  core-domain/        # Domain model (entities, value objects, interfaces)
  core-application/   # Application services (use cases, orchestration)

Release

Releases are automated via semantic-release on every push to main. Commit messages follow the Conventional Commits spec.

Related repositories

This repository is a read-only mirror generated from the monorepo on every stable release. Please open issues and pull requests on the monorepo.

  • Monorepo (source of truth, issues, full docs): https://github.com/JoRouquette/obsidian-vps-publish
  • Docker image (server: API + site): https://hub.docker.com/r/jorouquette/obsidian-vps-publish
  • Domain library mirror: https://github.com/JoRouquette/vps-publish-core-domain
  • Application library mirror: https://github.com/JoRouquette/vps-publish-core-application

License

MIT — see LICENSE

HealthExcellent
ReviewSatisfactory
About
Publish selected vault folders and assets to your personal VPS using frontmatter-based include/exclude filters. Upload to a configurable VPS endpoint with incremental sync that transfers only changed files; desktop-only (requires Node.js) and no third-party servers or telemetry are contacted.
PublishingSyncingProperties
Details
Current version
6.24.2
Last updated
4 days ago
Created
5 months ago
Updates
9 releases
Downloads
49
Compatible with
Obsidian 1.13.0+
Platforms
Desktop only
License
MIT
Report bugRequest featureReport plugin
Author
Jonathan ROUQUETTEJonathan ROUQUETTEjo-rouquette
GitHubjorouquette
  1. Community
  2. Plugins
  3. Publishing
  4. Publish to VPS

Related plugins

Advanced Canvas

Supercharge your canvas experience. Create presentations, flowcharts and more.

Self-hosted LiveSync

Sync vaults securely to self-hosted servers or WEBRTC.

Meta Bind

Make your notes interactive with inline input fields, metadata displays, and buttons.

Fast Note Sync

Real-time sync of your vaults across server, mobile, and web; shareable with anyone; supports REST and MCP integrations to build your personal AI knowledge base.

Share Note

Instantly share/publish a note, with the full theme and content exactly like you see in Obsidian. Data is shared encrypted by default, and only you and the person you send it to have the key.

Google Drive Sync

Syncs a vault into Google Drive for cross-platform use (works for iOS).

YAOS

Simple real-time sync powered by your own Cloudflare Worker.

Update modified date

Automatically update a frontmatter modified date field when the file is modified.

Sync Engine

The extensible vault synchronization engine: Fast · Free · Reliable. Supports WebDAV, S3, and Google Drive.

Permalink Opener

Open URLs based on a permalink or slug in the note properties. Useful with static site generators such as Jekyll, Hugo, Eleventy, etc.