1
0
mirror of https://github.com/vrtmrz/obsidian-livesync.git synced 2024-12-12 09:04:06 +02:00
Go to file
2021-10-15 17:58:42 +09:00
instruction_images brushup readme 2021-10-13 21:38:44 +09:00
pouchdb-browser-webpack rewrited file treatment 2021-10-14 19:27:08 +09:00
.gitignore first replication error fixed and minor some fixed 2021-10-15 12:30:06 +09:00
LICENSE documentation improvement 2021-10-15 01:27:24 +09:00
main.js database dedup implemented. 2021-10-15 17:58:42 +09:00
main.ts database dedup implemented. 2021-10-15 17:58:42 +09:00
manifest.json database dedup implemented. 2021-10-15 17:58:42 +09:00
package-lock.json database dedup implemented. 2021-10-15 17:58:42 +09:00
package.json database dedup implemented. 2021-10-15 17:58:42 +09:00
pouchdb-browser.js initial commit 2021-10-12 23:50:13 +09:00
README.md add 2021-10-15 12:42:25 +09:00
rollup.config.js first replication error fixed and minor some fixed 2021-10-15 12:30:06 +09:00
styles.css brushup readme 2021-10-13 21:38:44 +09:00
tsconfig.json brushup readme 2021-10-13 21:38:44 +09:00
versions.json initial commit 2021-10-12 23:50:13 +09:00

obsidian-livesync

This is the obsidian plugin that enables livesync between multi terminals.
Runs in Mac, Android, Windows, and iOS.

obsidian_live_sync_demo

It's beta. Please make sure back your vault up!

Limitations: File deletion handling is not completed.

This plugin enables..

  • Live sync
  • Self-Hosted data synchronization with conflict detection and resolving in Obsidian.
  • Off line sync is also available.

How to use the beta build

  1. download this repo and expand [your-vault]/.obsidian/plugins/ (PC, Mac and Android will work)
  2. enable obsidian livesync in the settings dialog.
  3. If you use your self-hosted CouchDB, set your server's info.
  4. or Use IBM Cloudant, take an account and enable Cloudant in Catalog
    Note please choose "IAM and legacy credentials" for the Authentication method Setup details are in Couldant Setup Section.
  5. Setup LiveSync or SyncOnSave or SyncOnStart as you like.

Cloudant Setup

Creating an Instance

  1. Hit the "Create Resource" button. step 1

  2. In IBM Cloud Catalog, search "Cloudant". step 2

  3. You can choise "Lite plan" in free. step 3

Select Multitenant(it's the default) and the region as you like. step 4 3. Be sure to select "IAM and Legacy credentials" for "Authentication Method". step 5

  1. Select Lite and be sure to check the capacity. step 6

  2. And hit "Create" on the right panel. step 7

  3. When all of the above steps have been done, Open "Resource list" on the left pane. you can see the Cloudant instance in the "Service and software". Click it. step 8

  4. In resource details, there's information to connect from obsidian-livesync. Copy the "External Endpoint(preferred)" address. (*1) step 9

CouchDB setup

  1. Hit the "Launch Dashboard" button, Cloudant dashboard will be shown. Yes, it's almost CouchDB's fauxton.
    step 1

  2. First, you have to enable the CORS option. Hit the Account menu and open the "CORS" tab. Initially, "Origin Domains" is set to "Restrict to specific domains"., so set to "All domains(*)"
    NOTE: of course We want to set "app://obsidian.md" but it's not acceptable on Cloudant. step 2

  3. And open the "Databases" tab and hit the "Create Database" button. Enter the name as you like (*2) and Hit the "Create" button below.
    step 3

  4. If the database was shown with joyful messages, then you can close this browser tab now.
    step 4

Credentials Setup

  1. Back into IBM Cloud, Open the "Service credentials". You'll get an empty list, hit the "New credential" button. step 1

  2. The dialog to create a credential will be shown. type any name or leave it default, hit the "Add" button.
    step 2
    NOTE: This "name" is not related to your username that uses in Obsidian-livesync.

  3. Back to "Service credentials", the new credential should be created.
    open details.
    step 3
    The username and password pair is inside this JSON.
    "username" and "password" are so.
    follow the figure, it's "apikey-v2-2unu15184f7o8emr90xlqgkm2ncwhbltml6tgnjl9sd5"(*3) and "c2c11651d75497fa3d3c486e4c8bdf27"(*4)

obsidian-livesync setting

xx example values.

Items Value example
CouchDB Remote URI: (*1)/(*2) https://xxxxxxxxxxxxxxxxx-bluemix.cloudantnosqldb.appdomain.cloud/sync-test
CouchDB Username (*3) apikey-v2-2unu15184f7o8emr90xlqgkm2ncwhbltml6tgnjl9sd5
CouchDB Password (*4) c2c11651d75497fa3d3c486e4c8bdf27

License

The source code is licensed MIT.