Module 1 — Install & connect
A schema tool you can’t install — or can’t point at a database — is just a README. So let’s get SchemaSmith onto your machine and talking to a live database, on whatever engine you run.
Get the tools
Section titled “Get the tools”SchemaSmith ships as three self-contained executables — schemaquench, schematongs, and datatongs. No runtime to install, no service to configure. One command and they’re on your PATH.
- Windows:
choco install schemasmith - Linux / macOS:
curl -fsSL https://schemasmith.com/dl/install.sh | sh
Every other channel — .deb, .rpm, manual download, signature verification — is in the Installation guide. Pick your path, then confirm the install:
schemaquench --versionSchemaQuench - Version: 2.0.0.0Command not found? The CLI isn’t on your PATH yet — the install guide has the fix per platform. One tool, one check, done.
Stand up a sandbox
Section titled “Stand up a sandbox”You need a database to connect to. The Module 1 lab ships a throwaway three-engine sandbox — SQL Server, PostgreSQL, and MySQL, all at once. From the lab’s docker folder:
docker compose up -d./verify-sandbox.shWhen all three report PASS, you’ve got a learn database waiting on every engine. Full setup and credentials are in the lab README.
Connect — kindle the forge
Section titled “Connect — kindle the forge”Here’s the thing: SchemaSmith doesn’t have a “ping” button. It proves a connection by doing the first real piece of work — connecting and kindling the forge. That’s the one-time setup that installs SchemaSmith’s helper routines into a target database. We’ll run a tiny starter package that has no tables yet, just to make first contact.
From the lab’s sqlserver folder (or postgres, or mysql):
schemaquench --ConfigFile:connect.settings.jsonWatch the log. The lines that matter:
localhost,11433 (…) connection succeededValidate ServerLocate Databases To Quench[localhost,11433].[learn] Begin Quench[localhost,11433].[learn] Kindling the forge[localhost,11433].[learn] Successfully QuenchedCompleted quench of LearnConnectThere’s your proof. SchemaSmith connected, validated the server, found the learn database, and kindled the forge. No tables in the package yet, so nothing else deployed — exactly right. Run the other two engine folders and you’ll see the same three-act story with different connection details: SQL Server, PostgreSQL, MySQL, same flow.
That starter package isn’t throwaway. It’s the anvil for Module 2 — next time, you’ll lay your first table on it and quench it for real.
Check yourself: What two things must be true before SchemaQuench can deploy to a target?
The CLI is installed and on your PATH, and it has a working connection — host, port, and credentials — to the target database.
Tools on your PATH, a forge kindled on every engine you care about. That’s the cold, fiddly part behind you — from here on, it’s shaping metal.
Hit a snag getting installed or connected — a stubborn PATH, a connection that won’t take? Email me at forgebarrett@schemasmith.com — I read every one.
Next up: Module 2 — Your first schema package. We declare a table and quench it into being.
Until then, may your forge light on the first strike and your connection hold true.
— Forge