Skip to content

Repository files navigation

SCDMS — Sharp Core Database Management System

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

Install (one command)

Windows (PowerShell):

irm https://raw.githubusercontent.com/MPCoreDeveloper/SCDMS/main/install/install.ps1 | iex

Linux / macOS (bash):

curl -fsSL https://raw.githubusercontent.com/MPCoreDeveloper/SCDMS/main/install/install.sh | bash

Both 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 only

First launch: SCDMS serves HTTPS with a locally generated, self-signed localhost certificate (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.

Update

  • In-app: SCDMS checks GitHub Releases at most once per 24h and shows a banner when a newer version exists.
  • CLI:scdms --update (or scdms --check-update).
  • Manual: re-run the install one-liner above.

Uninstall

# 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 -- --uninstall

Your databases and settings (in %LOCALAPPDATA%\SCDMS / ~/.local/share/SCDMS) are never touched by (un)installs.

Migrating from SharpCoreDB.WebViewer

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.

Build from source

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.csproj

Dev launchers: scripts/launch.ps1 (Windows), scripts/launch.sh (Linux/macOS). Smoke test: scripts/smoke-test.ps1.

Release process (maintainers)

  1. Tag: git tag v1.0.0 && git push origin v1.0.0
  2. The release workflow publishes self-contained single-file binaries for win-x64, linux-x64, linux-arm64, osx-x64, osx-arm64 plus SHA256SUMS.txt to GitHub Releases.
  3. The Docker workflow builds the container image (ghcr.io/mpcoredeveloper/scdms) for linux/amd64 + linux/arm64.

Docker & gRPC deployments

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:local

A 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.

Documentation

License

MIT — see LICENSE. SCDMS is free and open-source software; infrastructure costs are €0 (GitHub-hosted).

About

Sharp Core Database Management System

Topics

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages