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
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
Oh... je me demandais comment ils allaient faire, et c'est pas mal ! Dommage que tout soit un peu lié à Cloudflare. Haha
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.
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à..
Lors de la création des workers,
d1etr2sont aussi créés automatiquement, donc vous devrez probablement supprimer également lesd1etr2associés.J’ai suivi vos indications et c’est résolu. Merci.
L’auto-hébergement est-il aussi payant ?
Non, il suffit simplement d’avoir un compte Cloudflare. Il suffit de consulter le guide : https://synch.run/ko/self-hosting
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 ?
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.
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
En quoi est-ce différent d’Obsidian LiveSync ?
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.