Files
obsidian-livesync/src/apps/webpeer
vorotamoroz 0dfd42259d 11th March, 2026
Now, Self-hosted LiveSync has finally begun to be split into the Self-hosted LiveSync plugin for Obsidian, and a properly abstracted version of it.
This may not offer much benefit to Obsidian plugin users, or might even cause a slight inconvenience, but I believe it will certainly help improve testability and make the ecosystem better.
However, I do not see the point in putting something with little benefit into beta, so I am handling this on the alpha branch. I would actually preferred to create an R&D branch, but I was not keen on the ampersand, and I feel it will eventually become a proper beta anyway.

### Refactored

- Separated `ObsidianLiveSyncPlugin` into `ObsidianLiveSyncPlugin` and `LiveSyncBaseCore`.
- Now `LiveSyncCore` indicates the type specified version of `LiveSyncBaseCore`.
- Referencing `plugin.xxx` has been rewritten to referencing the corresponding service or `core.xxx`.

### Internal API changes

- Storage Access APIs are now yielding Promises. This is to allow more limited storage platforms to be supported.

### R&D

- Browser-version of Self-hosted LiveSync is now in development. This is not intended for public use now, but I will eventually make it available for testing.
- We can see the code in `src/apps/webapp` for the browser version.
2026-03-11 05:47:00 +01:00
..
2026-03-11 05:47:00 +01:00

A pseudo client for Self-hosted LiveSync Peer-to-Peer Sync mode

What is it for?

This is a pseudo client for the Self-hosted LiveSync Peer-to-Peer Sync mode. It is a simple pure-client-side web-application that can be connected to the Self-hosted LiveSync in peer-to-peer.

As long as you have a browser, it starts up, so if you leave it opened some device, it can replace your existing remote servers such as CouchDB.

Important

Of course, it has not been fully tested. Rather, it was created to be tested.

This pseudo client actually receives the data from other devices, and sends if some device requests it. However, it does not store files in the local storage. If you want to purge the data, please purge the browser's cache and indexedDB, local storage, etc.

How to use it?

We can build the application by running the following command:

$ deno task build

Then, open the dist/index.html in the browser. It can be configured as the same as the Self-hosted LiveSync (Same components are used1 ).

Some notes

I will launch this application in the github pages later, so will be able to use it without building it. However, that shares the origin. Hence, the application that your have built and deployed would be more secure.


  1. Congrats! I made it modular. Finally... ↩︎