claude@clouddev1 6d54c1e96c
ci / gate (push) Successful in 1m59s
ci / manifests (push) Successful in 4s
ci(publish): wire Scoop bucket + Homebrew tap jobs (D3 §3b/§3c)
Add sibling publish.yaml jobs (scoop-bucket, homebrew-tap) that render a
manifest from the release .sha256 sidecars and idempotently push it to the
org-level lazyeval/scoop-bucket and lazyeval/homebrew-tap repos, using the
scoped lazyeval-ci bot token (LAZYEVAL_PKG_TOKEN).

Render logic lives in dependency-free bash (the CI image has no jq/ruby):
scripts/render-scoop-manifest.sh and scripts/render-homebrew-formula.sh.
scripts/test-package-renders.sh exercises both: it validates the Scoop JSON
with node and asserts fields on both manifests, and additionally runs
`ruby -c` on the formula where ruby is present (dev box), skipping it
gracefully otherwise.

A new ci.yaml `manifests` job runs that test on every push so a render
regression surfaces immediately, not at the next manual publish dispatch.
The CI image has no ruby, so in CI the gate covers the Scoop JSON (node) and
field assertions for both manifests; the formula's Ruby syntax is checked
dev-side only (the static heredoc's variable parts cannot introduce syntax
errors).

- Scoop: x64 (gnu) + arm64 (gnullvm); #/-rename fragment so the bin shim is
  version-stable; checkver, no autoupdate (the pipeline is the updater).
- Homebrew: on_macos/on_linux x arch bare-binary formula; no Windows.

Docs: ADR-0056 Amendment 2 (+ README index, requirements D3).

Unverified pending real use: scoop/brew install, the HEAD:main branch
assumption, macOS Gatekeeper-via-brew on the ad-hoc-signed binary.
2026-06-19 21:30:18 +00:00

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

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.

S
Description
No description provided
Readme 17 MiB
v0.2.0 Latest
2026-06-17 23:05:39 +01:00
Languages
Rust 97%
MDX 1.2%
JavaScript 0.8%
Shell 0.4%
Astro 0.2%
Other 0.3%