Add the 4th publish.yaml sibling job: opens a PR to microsoft/winget-pkgs with komac (pinned 2.16.0 prebuilt) for LazyEvaluation.RdbmsPlayground (portable, x64 + arm64). Unlike scoop/homebrew it's a PR into Microsoft's central, human-gated catalog - async and validated on their side. - Auth: a classic public_repo GitHub PAT on a dedicated bot account (lazyeval-ci; fine-grained tokens can't open the cross-fork PR - komac #310), as the WINGET_GITHUB_TOKEN secret, job-scoped and passed to the API guards via a 0600 curl config file (never argv). - Idempotent via two guards before submitting (already-merged version + already-open PR) so a repeated publish dispatch can't open a duplicate. - No actions/checkout (komac works off URLs + the GitHub API). Docs: ADR-0056 Amendment 4 - the model, the one-time manual `komac new` bootstrap recipe (flags verified vs komac 2.16.0), and first-run learnings: the fork must pre-exist, and a direct single-exe portable takes its PATH alias from Commands[0] (not PortableCommandAlias, which is nested-only). Plus README index + requirements D3. Wiring only; going live needs the bootstrap PR (#391335, submitted) to merge.
rdbms-playground
A cross-platform terminal app for learning relational database concepts — tables, columns, primary and foreign keys, relationships, indexes, queries, and query plans — in a safe sandbox.
It's a teaching tool, not a database administration tool. It meets beginners with guided, keyword-based commands (simple mode) and grows with them to raw SQL (advanced mode), so the same playground works from "what is a primary key?" through to writing real queries and reading their execution plans.
Website & documentation: https://relplay.org
Install
One line (Linux / macOS)
curl -fsSL https://git.lazyeval.net/oli/rdbms-playground/raw/branch/main/scripts/install.sh | sh
Detects your OS and CPU, downloads the matching release binary, verifies
its SHA-256 checksum, and installs it to ~/.local/bin. Set
RDBMS_INSTALL_DIR to install elsewhere, or RDBMS_VERSION=vX.Y.Z to
pin a version. (Prefer to read before you run? The script lives at
scripts/install.sh.)
One line (Windows, PowerShell)
irm https://git.lazyeval.net/oli/rdbms-playground/raw/branch/main/scripts/install.ps1 | iex
Downloads the matching .exe, verifies its checksum, installs to
%LOCALAPPDATA%\Programs\rdbms-playground, and adds it to your user
PATH. Or use a package manager (Scoop / winget) once those land.
With cargo binstall
If you have cargo-binstall
(install it first — it is not part of cargo itself):
cargo binstall rdbms-playground
From source
cargo install rdbms-playground # from crates.io
# or, from a clone:
cargo build --release # binary at target/release/rdbms-playground
Prebuilt binaries
Every release publishes static Linux, standalone Windows, and macOS
binaries (x86_64 and aarch64) with .sha256 checksums on the
releases page.
Windows users can also use the binary directly (package-manager support
is planned).
A quick taste
create table Customers with pk id(serial)
add column Customers: name (text)
add column Customers: email (text)
insert into Customers values ('Ann', 'ann@example.io')
show data Customers
Press F1 while typing for a contextual hint about the command you're
building, or type help for the full command list. Switch to raw SQL
with mode advanced (or prefix a single line with :).
Project status
Approaching its first public release. See the website for current features; installation via package managers (Homebrew, Scoop, winget) is on the roadmap.
License
Dual-licensed under either of
- MIT license (LICENSE-MIT)
- Apache License 2.0 (LICENSE-APACHE)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual-licensed as above, without any additional terms or conditions. See CONTRIBUTING.md.