18 points par hyeongjin 13 일 전 | 13 commentaires | Partager sur WhatsApp

Je développe Synch, un plugin de synchronisation open source pour Obsidian.

J’ai lancé ce projet en me demandant s’il était possible de recréer en open source une expérience comparable à Obsidian Sync.
L’objectif est d’offrir une synchronisation rapide, l’E2EE, un historique des versions et une alternative à Obsidian Sync déployable par soi-même.

Comme il s’agit d’un plugin Obsidian, il ne faut pas installer d’application séparée : il peut être utilisé sur les environnements desktop et mobile où Obsidian fonctionne.

Les fonctionnalités actuellement prises en charge sont les suivantes :

  • chiffrement local du contenu des fichiers et des métadonnées de chemin avant l’envoi
  • synchronisation des modifications entre plusieurs appareils en quelques secondes
  • historique des versions
  • restauration des fichiers supprimés
  • fusion automatique en cas de conflit de fichiers

Sur le plan technique, le système fonctionne sur Cloudflare Workers + Durable Objects + R2.

  • Le client chiffre le contenu des fichiers et les métadonnées de chemin avant l’envoi.
  • Le serveur ne stocke que des blobs chiffrés et des métadonnées de synchronisation.
  • Durable Objects est utilisé pour gérer l’état de synchronisation et l’ordre des changements au niveau du vault.
  • Le corps des fichiers et l’historique des versions sont stockés dans R2.

Pour celles et ceux qui veulent l’auto-héberger, j’ai aussi préparé un déploiement en un clic compatible avec un compte Cloudflare gratuit.
Celles et ceux pour qui le déploiement est contraignant peuvent d’abord le tester simplement via un hosted server.

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

13 commentaires

 
yinn27 7 일 전

J’ai suivi exactement le guide d’auto-hébergement, en m’inscrivant à Cloudflare, en activant R2, etc., mais la synchronisation ne fonctionne pas.. snif snif Je ne vois pas ce qui ne va pas

 
nokdu 8 일 전

Oh... je me demandais comment ils allaient faire, et c'est pas mal ! Dommage que tout soit un peu lié à Cloudflare. Haha

 
rkjun 12 일 전

J’utilisais jusqu’ici Google Drive/DriveSync, mais il me manquait quelque chose (par exemple, les dernières données étaient parfois écrasées par un autre appareil… ou il y avait des conflits…). Du coup, je réfléchissais à passer à Obsidian Sync, et je pense que je vais l’essayer ! Merci.

 
grollcake 13 일 전

J’ai créé un compte en self-hosting, mais je n’arrive pas à me connecter avec ce même compte.
C’est probablement juste une erreur de ma part, j’ai dû oublier le mot de passe ^^
Mais il n’y a apparemment aucun moyen de réinitialiser le mot de passe.
Du coup, je n’ai pas eu d’autre choix que de supprimer le repo GitHub et les workers, puis de tout reconfigurer.
Cette fois, curieusement, au moment de l’inscription, on m’indique que le compte existe déjà..

 
hyeongjin 13 일 전

Lors de la création des workers, d1 et r2 sont aussi créés automatiquement, donc vous devrez probablement supprimer également les d1 et r2 associés.

 
grollcake 13 일 전

J’ai suivi vos indications et c’est résolu. Merci.

 
kurthong 13 일 전

L’auto-hébergement est-il aussi payant ?

 
hyeongjin 13 일 전

Non, il suffit simplement d’avoir un compte Cloudflare. Il suffit de consulter le guide : https://synch.run/ko/self-hosting

 
grollcake 13 일 전

Oh~ ça a l’air d’être assez abouti.
En revanche, j’ai créé un vault distant et lancé la synchronisation sur deux appareils, puis un vault supplémentaire est apparu dans l’arborescence des dossiers de chaque côté, avec l’arborescence d’origine dupliquée en dessous. Est-ce que c’est censé se passer comme ça ?

 
hyeongjin 13 일 전

Ce n’est pas le comportement prévu à l’origine.

Nous n’avons pas réussi à reproduire ce phénomène, ni moi ni les bêta-testeurs. Si cela vous convient, merci de nous écrire à contact@synch.run ou d’ouvrir une issue sur GitHub. Nous examinerons cela plus en détail et vous aiderons.

 
grollcake 13 일 전

J’ai essayé de supprimer le vault, mais une erreur se produit.

Échec de la suppression - l’épuration du coordinateur a échoué avec le statut 500

 
calofmijuck 13 일 전

En quoi est-ce différent d’Obsidian LiveSync ?

 
hyeongjin 13 일 전

LiveSync est basé sur CouchDB, ce qui permet un self-hosting plus polyvalent, tandis que Synch repose sur une architecture dépendante de Cloudflare.
En contrepartie, l’objectif était de permettre même à ceux qui ne savent pas configurer un serveur de déployer l’outil d’un simple clic avec un compte Cloudflare gratuit et de l’utiliser immédiatement.