Cara menyinkronkan aplikasi lokal-pertama di semua perangkat Anda tanpa layanan cloud


Apakah Anda menyukai privasi dari aplikasi yang mengutamakan lokal tetapi benci jika data Anda terkunci di satu perangkat? Ingin mengakses catatan Obsidian atau kata sandi KeePassXC di semua perangkat Anda tanpa menggunakan cloud? Inilah cara Syncthing membuat aplikasi yang mengutamakan lokal bekerja seperti aplikasi cloud—sambil menjaga data Anda tetap privat.

Apa masalah terbesar dengan aplikasi yang mengutamakan lokal

Aplikasi yang mengutamakan lokal sangat bagus karena banyak alasan. Mereka menjaga data Anda sepenuhnya pribadi, karena tidak ada yang Anda lakukan disimpan di cloud. Anda tidak perlu khawatir tentang berbagi data dengan pihak ketiga, atau informasi Anda digunakan untuk melatih model AI. Anda memiliki kepemilikan dan kontrol penuh atas data Anda.

Selain itu, aplikasi-aplikasi ini tidak bergantung pada internet. Bahkan jika koneksi Anda mati atau lambat—atau jika ada server tertentu yang mengalami masalah—aplikasinya tetap berjalan. Selama komputer Anda berfungsi dan perangkat keras Anda memadai, Anda bisa mengharapkan kinerja yang lancar.

Meskipun begitu, sebagian besar aplikasi lokal-pertama tidak sempurna, dan Anda akan menyadarinya segera ketika mencoba mengakses data Anda dari perangkat lain. Misalnya, jika Anda menginstal Obsidian di komputer Anda dengan semua catatan tersimpan secara lokal, jika Anda menginstal Obsidian di ponsel Anda, Anda tidak akan bisa mengakses catatan-catatan tersebut.

Hal yang sama berlaku untuk KeePassXC—sebuah pengelola kata sandi yang tangguh, aman, dan open-source. Kata sandi yang Anda simpan di satu komputer tidak akan bisa diakses dari sistem lain. Lebih buruk lagi, jika terjadi sesuatu pada komputer itu, dan Anda tidak mencadangkan data Anda (catatan atau kata sandi)—semuanya akan hilang begitu saja.

Mengapa sebagian besar aplikasi lokal terlebih dahulu melewatkan fungsi sinkronisasi atau penyimpanan di cloud

Bukan berarti pengembang aplikasi lokal-pertama tidak bisa membuat fitur sinkronisasi atau penyimpanan di cloud—mereka tentu bisa. Masalah sebenarnya adalah ekonomi.

Jika pengembang ingin menyertakan fungsionalitas cloud, mereka perlu menyimpan data pengguna di server—dan server membutuhkan biaya. Namun, sebagian besar aplikasi lokal-pertama gratis untuk digunakan, yang berarti pemeliharaan infrastruktur cloud dengan cepat menjadi tidak layak secara finansial.

Meski begitu, beberapa aplikasi gratis dan lokal-pertama telah menemukan cara cerdas untuk mengatasi masalah ini. Misalnya, aplikasi seperti Obsidian, yang gratis digunakan secara default, menawarkan sinkronisasi cloud sebagai tambahan berbayar. Meskipun ini adalah cara yang bagus untuk mendukung aplikasi yang Anda sukai, hal ini juga membuat Anda terikat pada langganan—dan tidak semua orang menyukainya.

Beberapa aplikasi lokal-pertama mengambil pendekatan berbeda dengan membiarkan Anda menggunakan layanan cloud pihak ketiga untuk menyimpan data Anda, sehingga menghindari biaya menjalankan server mereka sendiri. Misalnya, Super Productivity—sebuah aplikasi manajemen tugas yang kuat—memungkinkan Anda menyimpan databasenya di Google Drive, yang kemudian disinkronkan ke berbagai perangkat. Namun solusi ini juga tidak sempurna. Selain Anda mengekspose data Anda ke pihak ketiga—yang mengurangi daya tarik privasi dari aplikasi lokal-pertama—Anda juga membuat data Anda tergantung pada server eksternal, pemadaman, dan gangguan layanan.

Beberapa aplikasi, seperti Notion, gratis (atau lebih tepatnya, freemium) dan masih bisa menawarkan infrastruktur cloud. Dalam kasus ini, pengguna berbayar menutup biaya untuk pengguna gratis. Aplikasi 'gratis' lainnya menutupi biaya cloud mereka dengan mengambil data pengguna dan menjualnya untuk mendapatkan keuntungan—efektif membuat pengguna menjadi produknya.

Bagaimana Syncthing menyelesaikan masalah ini

Syncthing adalah perangkat lunak gratis dan sumber terbuka (FOSS) yang membangun koneksi peer-to-peer antara dua atau lebih perangkat untuk sinkronisasi data. Tidak ada layanan cloud yang terlibat—alat ini mengubah semua perangkat Anda menjadi rekan setara yang berkomunikasi langsung satu sama lain.

Misalkan Anda ingin menyinkronkan catatan Obsidian Anda antara PC Windows dan smartphone Android. Anda menginstal Syncthing di kedua perangkat, menyiapkan folder sinkronisasi di masing-masing, dan menempatkan vault Obsidian Anda di dalam folder tersebut. Mulai saat itu, setiap perubahan yang Anda buat di satu perangkat akan otomatis tersinkronisasi ke perangkat lain—dan sebaliknya.

Pendekatan yang sama berlaku untuk kata sandi KeePassXC Anda, tugas Super Productivity, atau data aplikasi lokal lainnya yang ingin Anda sinkronkan. Anda juga dapat membuat beberapa folder di Syncthing dan menyinkronkan masing-masing ke perangkat yang berbeda. Misalnya, basis data kata sandi KeePassXC Anda mungkin disinkronkan antara desktop dan laptop Anda—tetapi tidak perlu data tersebut berada di ponsel cerdas Anda, terutama karena tidak ada aplikasi seluler untuk itu. Syncthing memberi Anda fleksibilitas penuh untuk memilih perangkat mana yang menerima data tertentu.

Apakah Syncthing bisa bekerja melalui data seluler?

Karena Syncthing gratis, open source, dan membangun koneksi peer-to-peer antar perangkat, beberapa orang salah mengira bahwa aplikasi ini hanya bekerja di jaringan lokal. Untungnya, aplikasi Android—sebuah pembungkus open-source yang disebut Syncthing-Fork—bekerja baik melalui Wi-Fi maupun data seluler. Ini berarti meskipun Anda berada di luar rumah dan jauh dari komputer Anda, Anda masih bisa menyimpan catatan baru ke dalam vault Obsidian Anda. Saat Anda kembali ke rumah, semuanya akan tersinkronisasi secara otomatis ke komputer Anda.

Dengan itu, sinkronisasi melalui data seluler dinonaktifkan secara default, karena sinkronisasi terus-menerus bisa cepat menghabiskan kuota data Anda jika tidak berhati-hati. Selain itu, Syncthing akan melanjutkan sinkronisasi normal segera setelah ponsel Anda terhubung kembali ke Wi-Fi, jadi ini bukan masalah besar. Namun, jika Anda ingin fleksibilitas, Anda bisa pergi ke Pengaturan > Kondisi Jalankan dan mengaktifkan "Jalankan dengan Data Seluler."

Apakah Syncthing dapat diandalkan untuk cadangan cloud?

Sinkronisasi lintas perangkat bukan satu-satunya keuntungan yang Anda dapatkan dari aplikasi cloud—Anda juga bisa menggunakannya sebagai "cadangan" untuk data Anda. Jika sesuatu terjadi pada satu perangkat, data Anda tetap aman di cloud.

Awalnya, saya tidak yakin akan mendapatkan manfaat ini dari Syncthing. Saya merasa bahwa jika sebuah file rusak atau terhapus di satu perangkat, perubahan itu akan tersinkronisasi ke mana-mana dan mengorbankan semua data saya. Untungnya, Anda bisa mencegah hal ini terjadi dengan menggunakan sistem versi file bawaan dari Syncthing.



Ketika pengelolaan versi diaktifkan untuk folder yang disinkronkan, Syncthing secara otomatis mengarsipkan versi lama dari file setiap kali file tersebut diubah atau dihapus akibat perubahan dari perangkat lain. Anda dapat memilih dari berbagai strategi pengelolaan versi dan juga mengatur berapa banyak versi lama yang disimpan sebelum dibersihkan.

Versioning hanya melindungi terhadap perubahan yang berasal dari perangkat lain. Jika Anda menghapus file secara lokal di laptop Anda, laptop tersebut tidak akan menyimpan cadangannya. Namun, ketika penghapusan itu disinkronkan ke desktop Anda, desktop akan mengarsipkan file lama di folder ".stversions" sebelum menghapusnya.

Bagaimana cara menggunakan Syncthing untuk menyinkronkan data lokal Anda?

Menginstal dan mengatur Syncthing cukup mudah dan biasanya hanya memerlukan beberapa menit. Jika Anda ingin panduan cepat tentang proses pengaturan dan konfigurasi, lihat panduan saya tentang menggunakan Syncthing untuk menyinkronkan catatan Obsidian antara PC dan ponsel Anda. Saya juga telah menulis panduan terpisah yang menunjukkan bagaimana saya menggunakan Syncthing untuk menyinkronkan file antara PC Linux dan Windows saya, yang seharusnya memberi Anda gambaran jelas tentang cara kerja sinkronisasi PC-ke-PC dalam praktik.

Artikel terkait