{"repo":"tinyplex/synclets","free":true,"listed":false,"github":"https://github.com/tinyplex/synclets","clone":"git clone https://github.com/tinyplex/synclets.git","description":"An open, storage-agnostic, sync engine development kit.","language":"TypeScript","stars":62,"topics":["database","local-first","sync-engine","synchronization","storage-agnostic"],"license":null,"category":"databases-storage","readme_excerpt":"An open, storage-agnostic, sync engine development kit. Introducing Synclets Read about this new project! Core concepts Read the docs Read the code What are Synclets? Synclets are intended to make it easy to synchronize data between the different parts of your applications, whether between local storage and remote servers, between different devices, or even across worker boundaries. Why Synclets? We believe synchronization is a fundamental part of modern app development, especially in the context of rich client and local-first apps. We also believe that you shouldn&#x27;t be locked into a specific storage solution, transport layer, or vendor in order to do so! Store your data in... PGlite SQLite TinyBase Browser Files Memory ...and synchronize it over: WebSockets Broadcast Memory Connect to a data store Synclets are designed to work with lots of different flavors of storage and transport. For example, you can easily connect to a local instance of PGlite. Metadata is stored separately You can store metadata about your data (primarily timestamps) separately, or in the same data store. For example, here we&#x27;re using PGlite for metadata too. Pick a transport layer Synclets are designed to work over a variety of transport layers. For example, to use WebSockets via a server use the createWsClientTransport function. And then put it all together Finally compose a Synclet instance with your chosen data connector, meta connector, and transport - and start it! We&#x27;re good to go.","default_branch":null,"files":null,"tree":[],"storefront":"/r/tinyplex","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/tinyplex/synclets/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}