📄️ Bring Your Own Backend
One of the guiding principles of Loco Sync is to work with any backend that implements the expected network interface, rather than a particular tech stack, library, or hosted service. Below is a guide on how exactly to "bring your own backend" - requirements and tips on how to implement a compliant Loco Sync backend.
📄️ Derived Model Types
The "default" way to define model types in Loco Sync is via hand-written Typescript types. In many real applications, however, this would be error prone or impractical. Below are a couple of examples of how to derive model types from common libraries you might already be using in your application.
📄️ Incremental Loading
A naive implementation of a sync engine might load all application state from the backend to the client (storage and in-memory), then sync all subsequent changes. In real production applications, this approach is often a non-starter due to the size of application data for a couple of different reasons:
📄️ Permissions
Loco Sync does not attempt to implement any permissions as part of the sync engine protocol, but rather provides primitives to implement the required logic of your application.