Introducing DataCrud.DBOps: Open-Source Database Operations for .NET
We just released DataCrud.DBOps on NuGet โ a professional-grade .NET library for automated database backups, maintenance, and health monitoring across SQL Server, PostgreSQL, MySQL, MongoDB, and Oracle.
Today we're open-sourcing DataCrud.DBOps โ a library we've been running internally across all our products for the past year. It handles automated database maintenance, resilient backup workflows, cloud storage sync, and real-time operational monitoring โ all from a single NuGet package.
It's MIT-licensed, targets .NET 9, .NET Standard 2.0, and .NET Framework 4.7+, and is available on GitHub at github.com/datacrud/datacrud-db-ops.
Why we built it
Every DataCrud product โ TilesPad, Posify24, RecoCRM โ runs on SQL Server in multi-tenant deployments. Keeping those databases healthy means running regular index maintenance, shrinking fragmented files, verifying backups, and shipping those backups off-site to cloud storage. For a long time we handled this with a mix of SQL Agent jobs, custom scripts, and manual monitoring. It worked, but it was brittle and hard to observe.
We wanted something that was code-first, observable from inside the application, and easy to wire up across multiple services without duplicating logic. After evaluating the existing landscape and finding nothing that fit our exact needs, we built DataCrud.DBOps.
What it does
The library covers five core capabilities. First, automated maintenance: scheduled index reorganize and rebuild operations, database shrinking, and integrity checks โ all configurable via code and running as background jobs.
Second, resilient backups: full-database backup workflows with high-ratio compression and integrity verification after every backup run, so you know immediately if a backup is corrupted.
Third, multi-cloud sync: native integration with both AWS S3 and Azure Blob Storage. Once configured, backups are pushed off-site automatically โ no shell scripts, no cron jobs outside the app.
Fourth, an embedded dashboard: a real-time operational UI built with HTMX and Alpine.js that mounts inside your ASP.NET Core app. You can see job history, current status, and errors without opening a separate monitoring tool.
Fifth, centralized logging via an IJobStorage abstraction that supports SQL Server and LiteDB as backends. Every job execution is recorded, so you always have an audit trail.
Multi-database support
We designed DBOps to be database-agnostic from the start. The current release ships with a SQL Server provider, and the architecture is built for PostgreSQL, MySQL, MongoDB, and Oracle providers to follow in upcoming releases.
This matters because teams rarely use just one database across all their services. Having one consistent library for operational health monitoring โ regardless of the underlying engine โ reduces the cognitive overhead of running multiple database types in production.
Getting started
Install the core package and your database provider via NuGet: dotnet add package DataCrud.DBOps.AspNetCore and dotnet add package DataCrud.DBOps.SqlServer.
Then register DBOps in your Program.cs with a single call to builder.Services.AddDBOps(), passing your job storage backend and optional cloud sync configuration. Full setup documentation and examples are in the README on GitHub.
Open to contributions
DataCrud.DBOps is MIT-licensed and open to contributions. If you run into a bug, want to add a new database provider, or have suggestions for the embedded dashboard โ open an issue or a pull request on GitHub.
This is our first public open-source release as a company. We plan to continue extracting general-purpose infrastructure from our products and sharing it with the .NET community. If this library is useful to you, a GitHub star helps others find it.
Ready to see it in action?
All DataCrud products come with a free trial. No credit card, no commitment โ just log in and explore.