A self-hosted server and management dashboard for administrating database synchronizations powered by CoreSync.
CoreSyncServer gives you a web-based control plane to configure, monitor, and secure bidirectional sync between your application databases — without writing sync infrastructure code.
- Multi-database support — synchronize SQLite, SQL Server (Triggers or Change Tracking), and PostgreSQL databases.
- Web dashboard — manage projects, data stores, table configurations, and endpoints from an intuitive web UI.
- Per-endpoint authentication — protect sync endpoints with Basic, API Key, or JWT/JWKS authentication.
- Claim-based filtering — pass authenticated user claims as query parameters to filter synced data per user or tenant.
- Bulk streaming — efficient paginated change set transfers with JSON and MessagePack binary support.
- Connectivity monitoring — background health checks on configured data stores with optional email alerts.
- Automatic maintenance — scheduled cleanup of sync sessions, traces, and diagnostics.
Project and data store overview.
Configuring a sync endpoint with authentication.
┌─────────────┐ ┌──────────────────┐ ┌─────────────┐
│ Client App │◄──────►│ CoreSyncServer │◄──────►│ Database │
│ (mobile, │ HTTP │ (API + Dashboard)│ │ (SQLite, │
│ desktop, │ sync │ │ │ SQL Server,│
│ web, API) │ │ │ │ PostgreSQL)│
└─────────────┘ └──────────────────┘ └─────────────┘
- Configure — use the dashboard to create a project, connect a data store, select which tables to sync, and publish an endpoint.
- Authenticate — each endpoint can require Basic, API Key, or JWT credentials.
- Sync — client applications call the REST API from any platform or language to pull and push change sets.
CoreSyncServer is distributed as a Docker image with a bundled PostgreSQL database for its own metadata storage.
git clone --recurse-submodules https://github.com/adospace/CoreSyncServer.git
cd CoreSyncServer/deploy
cp .env.example .env
# Edit .env and set a strong POSTGRES_PASSWORD
docker compose up -dOpen http://localhost:8080 and log in with admin / admin.
For the full installation guide — including HTTPS, SMTP notifications, reverse proxy setup, backup/restore, and troubleshooting — see the Deployment Guide.
All sync endpoints live under api/sync/{endpointId}:
| Operation | Method | Path |
|---|---|---|
| Get store ID | GET |
store-id |
| Get sync version | GET |
sync-version |
| Download changes | GET |
changes-bulk/{storeId} |
| Upload changes | POST |
changes-bulk-begin → changes-bulk-item → changes-bulk-complete/{sessionId} |
See the Deployment Guide — Sync API Reference for the complete endpoint list with authentication headers and curl examples.
| Database | Tracking Modes | Notes |
|---|---|---|
| SQLite | Trigger-based | File path must be accessible from the server |
| SQL Server | Triggers, Change Tracking | Choose per data store |
| PostgreSQL | Trigger-based | Full support |
- PostgreSQL for application metadata
- CoreSync for the sync engine
- Standard REST API — works with any language or framework (React, Flutter, Node.js, Python, Go, etc.)
MIT — Copyright (c) 2026 Adolfo Marinucci