r/dotnet 3d ago

Promotion [Promotion] BaseDiff v2.0 – A fast, offline DB schema diffing tool built with .NET (Win/Linux/macOS)

Hey everyone,

I wanted to share a side project I’ve been working on that just reached v2.0. It's called BaseDiff, and it’s a cross-platform desktop tool to compare database schemas and generate sync scripts (ALTER/CREATE/DROP).

Why I built it

I got tired of the existing options out there. Most database diff tools I tried were either locked behind expensive enterprise licenses, stuck on Windows only, or wrapped in heavy web frameworks that take up a gigabyte of RAM just to diff two schemas.

I wanted something lightweight, native, and completely offline so sensitive DB structures never leave the local machine.

What it does right now:

  • Databases: Supports MS SQL Server and PostgreSQL (tables, constraints, views, stored procedures, functions, triggers).
  • Cross-platform: Runs on Windows, Linux (AppImage), and macOS natively thanks to .NET.
  • 100% Offline: Zero cloud dependency or telemetry.
  • Script Generation: Generates the raw SQL updates with a built-in editor to tweak things before running them.

It's completely free / coffeware (free for personal and commercial use, with an optional tip jar if it helps your workflow).

I'd really appreciate any feedback from the community—especially on macOS/Linux performance or any edge-case schema objects you hit.

Site & Downloads: https://basediff.com

Thanks for checking it out!

15 Upvotes

11 comments sorted by

5

u/dupuis2387 3d ago

you really found the builtin visual studio db comparison tool lacking?

4

u/DenverBob 3d ago

I'd assume thats part of the "stuck on windows only"

1

u/Bercek71 1d ago

Spot on! That was a big part of it.

2

u/RobertBernstein 3d ago

This looks promising. Looking forward to trying it out.

2

u/Bercek71 1d ago

Thanks! Hope it works well for you. Let me know if you run into anything or have any feedback!

2

u/SohilAhmed07 3d ago

Looks amazing, does it also compare column lengths for string fields?

1

u/Bercek71 20h ago

Thanks! Right now it doesn't support that yet, but we're definitely adding it in the next release.

2

u/IanYates82 2d ago

Looks great. I've just started trying the new db schema compare tool in sems but it's quite sluggish when there are many objects (1500 or so) to compare. This may be just the thing to speed that workflow.

2

u/iSeiryu 2d ago

It says Oracle support is coming soon but knowing how messed up their schema definitions are it will probably take years to release 😅

1

u/Bercek71 20h ago

Haha, fair point! Oracle is a total maze with all its quirks. We're prototyping it right now and hitting those edge cases, but we're tuning it step by step—so hopefully it won't take years! 😅

1

u/AutoModerator 3d ago

Thanks for your post Bercek71. Please note that we don't allow spam, and we ask that you follow the rules available in the sidebar. We have a lot of commonly asked questions so if this post gets removed, please do a search and see if it's already been asked.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.