Mimetis/Dotmim.Sync
Mimetis/Dotmim.Sync has 983 GitHub stars and 202 forks. GitHot measured 0 stars in 24 hours and 0 in 7 days. Last checked 2026-11-11 17:08 UTC. Last push 2025-08-28.
A brand new database synchronization framework, multi platform, multi databases, developed on top of .Net Standard 2.0. https://dotmimsync.readthedocs.io/
Measured star growth
- in 24h
- 0
- in 7 days
- 0
- in 15 days
- Collecting history
- in 1 month
- Collecting history
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalDocumentation
Read the full documentation on https://dotmimsync.readthedocs.io/
Dotmim.Sync
DotMim.Sync (DMS) is a straightforward framework for syncing relational databases, developed on top of .Net 8 (and compatible with .Net Standard 2.0), available and ready to use within IOT, Xamarin, .NET, UWP and so on :)
| Multi Databases | Cross Plaform | .Net 8 / .Net Standard 2.0 |
|---|---|---|
![]() |
![]() |
![]() |
TL;DR
Here is the easiest way to create a first sync, from scratch :
- Create a .Net 8 or 6 project or a .Net Standard 2.0 compatible project (like a .Net Core 3.1 or .Net Fx 4.8 console application).
- Add the nugets packages Dotmim.Sync.SqlServer (or Dotmim.Sync.MySql if you want to tests MySql) and Dotmim.Sync.Sqlite
- Choose one database for testing:
- Either SQL Server test database : AdventureWorks lightweight script for SQL Server
- Or MySql test database : AdventureWorks lightweight script for MySQL Server
- Add this code :
// Sql Server provider, the "server" or "hub".
SqlSyncProvider serverProvider = new SqlSyncProvider(
@"Data Source=.;Initial Catalog=AdventureWorks;Integrated Security=true;");
// Sqlite Client provider acting as the "client"
SqliteSyncProvider clientProvider = new SqliteSyncProvider("advworks.db");
// Tables involved in the sync process:
var setup = new SyncSetup("ProductCategory", "ProductDescription", "ProductModel",
"Product", "ProductModelProductDescription", "Address",
"Customer", "CustomerAddress", "SalesOrderHeader", "SalesOrderDetail");
// Sync agent
SyncAgent agent = new SyncAgent(clientProvider, serverProvider);
do
{
var result = await agent.SynchronizeAsync(setup);
Console.WriteLine(result);
} while (Console.ReadKey().Key != ConsoleKey.Escape);
And here is the result you should have, after a few seconds:
Synchronization done.
Total changes uploaded: 0
Total changes downloaded: 2752
Total changes applied: 2752
Total resolved conflicts: 0
Total duration :0:0:3.776
You're done !
Now try to update a row in your client or server database, then hit enter again. You should see something like that:
Synchronization done.
Total changes uploaded: 0
Total changes downloaded: 1
Total changes applied: 1
Total resolved conflicts: 0
Total duration :0:0:0.045
Yes it's blazing fast !
Star History
Need Help
- Check the full documentation, available here : https://dotmimsync.readthedocs.io/
- Feel free to ping me: @sebpertus
- DMS font is created from the awesome Cubic font from https://www.dafont.com/cubic.font
Explore related projects
Asabeneh/30-Days-Of-Python
The 30 Days of Python programming challenge is a step-by-step guide to learn the Python programming language in 30 days. This challenge may take more than 100 days. Follow your own pace. These videos may help too: https://www.youtube.com/channel/UC7PNRuno1rzYPb1xLa4yktw
78,560 starsgrafana/grafana
The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
77,830 starsredis/redis
For developers, who are building real-time data-driven applications, Redis is the preferred, fastest, and most feature-rich cache, data structure server, and document and vector query engine.
77,395 starsapache/superset
Apache Superset is a Data Visualization and Data Exploration Platform
75,473 stars

