SCDMS is the official database studio for SharpCoreDB — like SSMS, but for SharpCoreDB. A local-first, cross-platform web UI that runs on your machine and opens in your browser.
- 🔎 Table explorer & metadata browser (columns, indexes, triggers)
- ⚡ SQL editor with multi-statement execution, named parameters, saved queries & history
- 🔀 Local databases (directory or single-file
.scdb) and remote SharpCoreDB servers (gRPC) - 🛡️ Secure-by-default: HTTPS, SafeWebCore strict A+ headers, no password persistence
- 🪟🐧🍎 Windows, Linux & macOS — no .NET installation required
Windows (PowerShell):
irm https://raw.githubusercontent.com/MPCoreDeveloper/SCDMS/main/install/install.ps1 | iexLinux / macOS (bash):
curl -fsSL https://raw.githubusercontent.com/MPCoreDeveloper/SCDMS/main/install/install.sh | bashBoth scripts are idempotent, verify SHA256 checksums, install per-user (no admin/root), and double as the updater: re-running them updates SCDMS to the latest release.
After install, start SCDMS from your Start Menu / app launcher, or:
scdms-open # starts the server and opens https://localhost:5443
scdms # starts the server onlyFirst launch: SCDMS serves HTTPS with a locally generated, self-signed
localhostcertificate (there is no .NET SDK to piggyback on). Accept the one-time browser warning, or trust the certificate via your OS certificate store. See docs/usage.md.
- In-app: SCDMS checks GitHub Releases at most once per 24h and shows a banner when a newer version exists.
- CLI:
scdms --update(orscdms --check-update). - Manual: re-run the install one-liner above.
# Windows
irm https://raw.githubusercontent.com/MPCoreDeveloper/SCDMS/main/install/install.ps1 | iex -ArgumentList '-Uninstall'# Linux / macOS
curl -fsSL https://raw.githubusercontent.com/MPCoreDeveloper/SCDMS/main/install/install.sh | bash -s -- --uninstallYour databases and settings (in %LOCALAPPDATA%\SCDMS / ~/.local/share/SCDMS) are never touched by (un)installs.
On first start, SCDMS automatically migrates your existing %LOCALAPPDATA%\SharpCoreDB.WebViewer data (settings, saved queries, history and databases) to the SCDMS folder. Nothing is deleted.
Requires the .NET 10 SDK:
git clone https://github.com/MPCoreDeveloper/SCDMS.git
cd SCDMS
dotnet build SCDMS.slnx
dotnet run --project src/SCDMS/SCDMS.csprojDev launchers: scripts/launch.ps1 (Windows), scripts/launch.sh (Linux/macOS). Smoke test: scripts/smoke-test.ps1.
- Tag:
git tag v1.0.0 && git push origin v1.0.0 - The release workflow publishes self-contained single-file binaries for
win-x64,linux-x64,linux-arm64,osx-x64,osx-arm64plusSHA256SUMS.txtto GitHub Releases. - The Docker workflow builds the container image (
ghcr.io/mpcoredeveloper/scdms) forlinux/amd64+linux/arm64.
SCDMS is container-ready and talks to SharpCoreDB exclusively over gRPC in server mode.
Container defaults: plain HTTP on :8080, bind 0.0.0.0, data in /app/data — TLS is terminated by a reverse proxy that holds a publicly trusted certificate (e.g. Caddy + Let's Encrypt). The SCDMS gRPC client connects to the server through that proxy and validates the public certificate.
docker build -t ghcr.io/mpcoredeveloper/scdms:local .# container-mode smoke run (no TLS, bind all interfaces):
docker run --rm -p 8080:8080 \
-e SCDMS__EnableHttps=false \
-e SCDMS__BindAddress=0.0.0.0 \
-e SCDMS__DataDirectory=/app/data \
-e SCDMS__DefaultServerHost=scdb.example.com \
-e SCDMS__DefaultServerPort=443 \
-e SCDMS__DefaultServerAutoConnect=true \
ghcr.io/mpcoredeveloper/scdms:localA full example (SCDMS + SharpCoreDB server + Caddy reverse proxy with Let's Encrypt) lives in samples/docker/. Configuration reference for container deployments (env variables, HTTP mode, default gRPC server, data volumes) is in docs/usage.md.
- Usage & configuration
- Standalone/migration plan (in the SharpCoreDB repo)
- SharpCoreDB documentation
MIT — see LICENSE. SCDMS is free and open-source software; infrastructure costs are €0 (GitHub-hosted).