18 poin oleh hyeongjin 13 hari lalu | 13 komentar | Bagikan ke WhatsApp

Saya sedang membuat Synch, plugin sinkronisasi open source untuk Obsidian.

Saya memulainya dengan pertanyaan apakah pengalaman seperti Obsidian Sync bisa dibuat dalam versi open source.
Targetnya adalah sinkronisasi cepat, E2EE, riwayat versi, dan alternatif Obsidian Sync yang bisa di-deploy sendiri.

Karena ini berbentuk plugin Obsidian, bukan model yang mengharuskan pemasangan aplikasi terpisah, plugin ini bisa digunakan di lingkungan desktop/mobile tempat Obsidian berjalan.

Fitur yang saat ini didukung adalah sebagai berikut.

  • Mengenkripsi konten file dan metadata path secara lokal lalu mengunggahnya
  • Menyinkronkan perubahan antar beberapa perangkat dalam hitungan detik
  • Riwayat versi
  • Pemulihan file yang dihapus
  • Penggabungan otomatis saat terjadi konflik file

Secara teknis, ini berjalan di atas Cloudflare Workers + Durable Objects + R2.

  • Klien mengenkripsi konten file dan metadata path lalu mengunggahnya.
  • Server hanya menyimpan blob terenkripsi dan metadata sinkronisasi.
  • Durable Objects digunakan untuk mengelola status sinkronisasi per vault dan urutan perubahan.
  • Isi file dan riwayat versi disimpan di R2.

Bagi yang ingin mencoba deploy sendiri, saya juga sudah menyiapkan one-click deployment yang bisa dijalankan dengan akun gratis Cloudflare.
Bagi yang merasa deployment merepotkan, Anda bisa terlebih dahulu mengujinya secara sederhana lewat hosted server.

GitHub: https://github.com/hjinco/synch

13 komentar

 
yinn27 7 hari lalu

Saya melihat panduan self-hosting, mendaftar ke Cloudflare, mengaktifkan R2, dan sepertinya sudah mengikuti langkahnya persis, tapi sinkronisasinya tidak jalan.. hiks hiks, entah apa yang salah

 
nokdu 8 hari lalu

Oh.. saya sempat berpikir bagaimana cara membuatnya, dan ini bagus! Tapi agak disayangkan karena terikat ke Cloudflare. Hehe

 
rkjun 12 hari lalu

Sebelumnya saya memakai Google Drive/DriveSync, tetapi rasanya ada yang kurang, (misalnya data terakhir hilang karena tertimpa perangkat lain.. atau terjadi konflik..) jadi saya sempat mempertimbangkan Obsidian Sync, sepertinya saya harus coba sekali! Terima kasih.

 
grollcake 13 hari lalu

Saya membuat akun lewat self-hosting, tetapi tidak bisa login dengan akun yang sama.
Mungkin saya memang lupa kata sandinya^^
Tapi ternyata tidak ada cara untuk mereset kata sandi.
Akhirnya saya terpaksa menghapus semuanya, baik repo GitHub maupun workers, lalu mengaturnya lagi dari awal.
Kali ini anehnya, saat mendaftar malah muncul pesan bahwa akun tersebut sudah ada..

 
hyeongjin 13 hari lalu

Saat membuat workers, d1 dan r2 juga otomatis dibuat, jadi Anda mungkin juga perlu menghapus d1 dan r2 yang terhubung.

 
grollcake 13 hari lalu

Saya menyelesaikannya seperti yang Anda beri tahu. Terima kasih.

 
kurthong 13 hari lalu

Apakah self-hosting juga berbayar?

 
hyeongjin 13 hari lalu

Tidak, Anda hanya perlu memiliki akun Cloudflare. Silakan lihat panduan di https://synch.run/ko/self-hosting.

 
grollcake 13 hari lalu

Oh~ kelihatannya tingkat kematangannya cukup bagus.
Tapi setelah saya membuat remote vault dan melakukan sinkronisasi di 2 perangkat, di tree folder masing-masing malah muncul satu vault lagi, lalu di bawahnya tree folder asli jadi terduplikasi. Memang seharusnya begitu?

 
hyeongjin 13 hari lalu

Itu memang bukan perilaku yang seharusnya terjadi.

Fenomena tersebut tidak bisa direproduksi oleh saya maupun para beta tester, tetapi jika berkenan, silakan kirim email ke contact@synch.run atau buat issue di GitHub. Kami akan memeriksanya lebih detail dan membantu Anda.

 
grollcake 13 hari lalu

Saya mencoba menghapus vault, tetapi muncul error.

Penghapusan gagal - coordinator purge failed with status 500

 
calofmijuck 13 hari lalu

Apa bedanya dengan Obsidian LiveSync?

 
hyeongjin 13 hari lalu

LiveSync berbasis CouchDB sehingga memungkinkan self-hosting yang lebih umum, sedangkan Synch memiliki arsitektur yang bergantung pada Cloudflare.
Sebagai gantinya, fokusnya adalah membuat orang yang tidak bisa melakukan pengaturan server pun dapat langsung menerapkannya dan segera menggunakannya hanya dengan satu klik, asalkan memiliki akun Cloudflare gratis.