Compare commits

...

10 Commits
0.0.9 ... 0.1.7

Author SHA1 Message Date
vorotamoroz
ccbf1b2ffe fix some,
- Add Utility functions.
- Database reset opeartion and corrupt preventions.
- Fixing file deleting.
- Tidy up setting dialog.
- Add notice about the file that having platform dependant name.
- Add webclip on readme
2021-10-26 18:08:01 +09:00
vorotamoroz
a01079d4b1 add the information of Test Server and WebClipper 2021-10-25 11:37:51 +09:00
vorotamoroz
1d71870fa3 Add 1 Feature and Refactored some
- Add Remote Database version check.
- Removed Depencency from Database Class.
2021-10-21 18:48:42 +09:00
vorotamoroz
0587a52d22 bumped. 2021-10-20 23:04:04 +09:00
vorotamoroz
6c37f7bb05 Fix careless mistake 2021-10-20 23:03:07 +09:00
vorotamoroz
d746c1cb52 Fixed parameter mistake.
Getting ready for webclip
2021-10-20 18:43:53 +09:00
vorotamoroz
39e2eab023 Fixing issues and tidy up the setting dialog.
Fixed timing problem of synchronization note and contents.
Tidy up the setting dialog.
Add Escape hatch
2021-10-19 17:53:54 +09:00
vrtmrz
20bdf057fe add very very important notice.
and digging weeds.
2021-10-18 16:18:55 +09:00
vrtmrz
531fb97cd9 fixed some sync, merging errors and speed up. 2021-10-18 15:07:44 +09:00
vrtmrz
518ae46cf9 chunk splitting method changed
less change sensitivity
2021-10-17 22:10:03 +09:00
6 changed files with 1197 additions and 318 deletions

View File

@@ -1,32 +1,62 @@
# obsidian-livesync
This is the obsidian plugin that enables livesync between multi terminals.
This is the obsidian plugin that enables livesync between multi-devices.
Runs in Mac, Android, Windows, and iOS.
<!-- <div><video controls src="https://user-images.githubusercontent.com/45774780/137352386-a274736d-a38b-4069-ac41-759c73e36a23.mp4" muted="false"></video></div> -->
![obsidian_live_sync_demo](https://user-images.githubusercontent.com/45774780/137355323-f57a8b09-abf2-4501-836c-8cb7d2ff24a3.gif)
**It's beta. Please make sure to back your vault up!**
**It's beta. Please make sure back your vault up!**
Limitations: File deletion handling is not completed.
Limitations: Folder deletion handling is not completed.
## This plugin enables..
- Live sync
- Live Sync
- Self-Hosted data synchronization with conflict detection and resolving in Obsidian.
- Off line sync is also available.
- Off-line sync is also available.
- Receive WebClip from [obsidian-livesync-webclip](https://chrome.google.com/webstore/detail/obsidian-livesync-webclip/jfpaflmpckblieefkegjncjoceapakdf)
## How to use the beta build
## IMPORTANT NOTICE
1. download this repo and expand `[your-vault]/.obsidian/plugins/` (PC, Mac and Android will work)
1. enable obsidian livesync in the settings dialog.
1. If you use your self-hosted CouchDB, set your server's info.
1. or Use [IBM Cloudant](https://www.ibm.com/cloud/cloudant), take an account and enable **Cloudant** in [Catalog](https://cloud.ibm.com/catalog#services)
Note please choose "IAM and legacy credentials" for the Authentication method
Setup details are in Couldant Setup Section.
1. Setup LiveSync or SyncOnSave or SyncOnStart as you like.
**Please make sure to disable other synchronize solutions to avoid content corruption or duplication.**
If you want to synchronize to both backend, sync one by one, please.
## How to use
1. Install from Obsidian, or clone this repo and run `npm run build` ,copy `main.js`, `styles.css` and `manifest.json` into `[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](https://www.ibm.com/cloud/cloudant), take an account and enable **Cloudant** in [Catalog](https://cloud.ibm.com/catalog#services)
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.
## Test Server
Setting up an instance of Cloudant or local CouchDB is a little complicated, so I made the [Tasting server of obsidian-livesync](https://olstaste.vrtmrz.net/) up. Try free!
Note: Please read "Limitations" carefully. Do not send your private vault.
## WebClipper is also available.
Available from on Chrome Web Store:[obsidian-livesync-webclip](https://chrome.google.com/webstore/detail/obsidian-livesync-webclip/jfpaflmpckblieefkegjncjoceapakdf)
Repo is here: [obsidian-livesync-webclip](https://github.com/vrtmrz/obsidian-livesync-webclip). (Docs are work in progress.)
## When your database looks corrupted
obsidian-livesync changes data treatment of markdown files since 0.1.0
When you are troubled with synchronization, **Please reset local and remote databases**.
_Note: Without synchronization, your files won't be deleted._
1. Disable any synchronizations on all devices.
2. From the most reliable device<sup>(_The device_)</sup>, back your vault up.
3. Click "Reset local database" on all devices.
4. From _The device_ click "Reset remote database".
5. From _The device_ click "Init Database again".
6. Enable any sync or Hit the Replication button.
And wait for a minute. your data will be uploaded and synchronized with all devices again.
## Cloudant Setup
@@ -38,7 +68,7 @@ Limitations: File deletion handling is not completed.
1. In IBM Cloud Catalog, search "Cloudant".
![step 2](instruction_images/cloudant_2.png)
1. You can choise "Lite plan" in free.
1. You can choose "Lite plan" for free.
![step 3](instruction_images/cloudant_3.png)
Select Multitenant(it's the default) and the region as you like.
@@ -107,4 +137,5 @@ example values.
| CouchDB Password | (\*4) | c2c11651d75497fa3d3c486e4c8bdf27 |
# License
The source code is licensed MIT.

1437
main.ts

File diff suppressed because it is too large Load Diff

View File

@@ -1,9 +1,9 @@
{
"id": "obsidian-livesync",
"name": "Obsidian Live sync",
"version": "0.0.9",
"version": "0.1.7",
"minAppVersion": "0.9.12",
"description": "obsidian Live synchronization plugin.",
"description": "Reflect your vault changes to some other devices immediately. Please make sure to disable other synchronize solutions to avoid content corruption or duplication.",
"author": "vorotamoroz",
"authorUrl": "https://github.com/vrtmrz",
"isDesktopOnly": false

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "obsidian-livesync",
"version": "0.0.8",
"version": "0.1.7",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "obsidian-livesync",
"version": "0.0.8",
"version": "0.1.7",
"license": "MIT",
"dependencies": {
"diff-match-patch": "^1.0.5",

View File

@@ -1,7 +1,7 @@
{
"name": "obsidian-livesync",
"version": "0.0.9",
"description": "obsidian Live synchronization plugin.",
"version": "0.1.7",
"description": "Reflect your vault changes to some other devices immediately. Please make sure to disable other synchronize solutions to avoid content corruption or duplication.",
"main": "main.js",
"scripts": {
"dev": "rollup --config rollup.config.js -w",

View File

@@ -18,3 +18,8 @@
.op-pre {
white-space: pre-wrap;
}
.op-warn {
border:1px solid salmon;
padding:2px;
border-radius: 4px;
}