Aller au contenu
s3nd.sh

Moteurs de synchronisation local-first

Une alternative à PowerSync quand il n’y a pas de base de données backend

Les deux sont offline-first : l’app lit et écrit localement et le réseau est un souci d’arrière-plan. Les deux laissent un utilisateur reprendre sur un autre appareil.

Ce qu’est PowerSync

Dans ses propres termes.

Un moteur de synchronisation qui garde une base SQLite côté client alignée sur votre Postgres, MongoDB ou MySQL. Des règles de synchronisation décident quelles lignes chaque utilisateur reçoit, les écritures repassent par votre propre backend, et les SDK clients couvrent le web, React Native, Flutter, Swift et Kotlin. Disponible en cloud hébergé ou auto-hébergé.

Côte à côte

Où ils se séparent.

 s3ndPowerSync
Ce que c’estUne CLI, une bibliothèque et des hooks React sur votre propre bucket S3Moteur de synchronisation Postgres, MongoDB ou MySQL vers SQLite côté client
Où vivent les donnéesVotre bucket : S3, R2, MinIO, Scaleway, WasabiVotre base, répliquée sur chaque client
Les deux côtés en ligne en même tempsNon. Le code est utilisé plus tard, jusqu’à expirationNon
Depuis votre app webOui, via une route sur votre serveurOui, SDK web
ComptesAucun. Le code est toute la poignée de mainRequis, JWT
HébergementVotre bucket, plus votre serveur quand un navigateur participeCloud hébergé ou auto-hébergé
PrixGratuit. Vous payez votre fournisseur de stockage pour quelques objets qui expirentOffre gratuite et offres payantes ; l’auto-hébergement est gratuit
LicenceMITSDK clients Apache-2.0 ; le service est source-available

Les différences

Ce qui change vraiment.

Une base sur le serveur ou aucune

PowerSync réplique depuis une base backend qui est la source de vérité. s3nd suppose que le navigateur est la source de vérité et qu’il n’y a peut-être aucune base backend ; le bucket contient un snapshot, pas une réplique.

Réplication partielle et continue ou snapshot entier

PowerSync streame les lignes qu’un utilisateur a le droit de voir, au fil des changements. s3nd déplace toute la base locale une fois, ou réécrit un objet de sauvegarde par utilisateur.

Un service ou un bucket

PowerSync est un service à faire tourner ou à louer, avec des règles de synchronisation à écrire. s3nd, c’est une route et un bucket, et une journée de travail.

Des utilisateurs ou des codes

PowerSync authentifie chaque client avec un JWT. s3nd fonctionne sans aucune identité : un code, une expiration, une limite de débit.

La décision

Choisissez celui qui convient.

Choisissez PowerSync quand

  • Vous avez un Postgres et le voulez côté client, offline-first.
  • Beaucoup d’utilisateurs, des permissions par ligne, des mises à jour en direct.
  • Des SDK mobiles natifs sont une exigence.

Choisissez s3nd quand

  • Il n’y a pas de base backend ; le navigateur détient les données.
  • Un code, pas une connexion.
  • Toute la fonctionnalité doit tenir en un après-midi.

Déposez un fichier. Donnez le code.

Pointez-le sur le bucket que vous payez déjà. Rien à déployer, aucune inscription, personne au milieu.