Jonathan ROUQUETTE49 downloadsPublish selected vault folders to your personal VPS with property-based filtering and remote upload.
Publish selected vault folders to your personal VPS with property-based filtering and remote upload.
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.
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.
Search for "Publish to VPS" in Obsidian's community plugin browser.
main.js, manifest.json, and styles.css from the latest release<your-vault>/.obsidian/plugins/vps-publish/git clone https://github.com/JoRouquette/vps-publish.git
cd vps-publish
npm install
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
src/ # Plugin source (Obsidian entry point, settings, UI)
libs/
core-domain/ # Domain model (entities, value objects, interfaces)
core-application/ # Application services (use cases, orchestration)
Releases are automated via semantic-release on every push to main.
Commit messages follow the Conventional Commits spec.
This repository is a read-only mirror generated from the monorepo on every stable release. Please open issues and pull requests on the monorepo.
MIT — see LICENSE