Back to directory

Prana

A Golang database manager and code generator with a command-line interface for SQL migrations, embedded SQL scripts, and generating models from an existing schema.

Prana

Prana is a package for rapid application development against relational databases in Go, used through its own command-line tool. Each migration is a single SQL script containing an up section and a down section, marked with comment labels, and migrations are created, run, and reverted through dedicated CLI commands after a one-time setup step.

It also supports embedding reusable SQL scripts into a project and generating Go models from an existing database schema. A migration can be suffixed with a specific database driver's name so that part of it only runs against that database, for example when part of a migration is MySQL-specific.

It is written in Go and released under the MIT license.

More in CLI tools

See all 181
  • grev

    github.com

    A set of Unix coreutils-style filters — grep, sort, cut and more — that answer a plain-language question about each record instead of matching a pattern, using a small decision model.

  • A Node.js script that exports a Google Doc to HTML and CSS with high fidelity, preserving headings, spacing, alignment, bullet lists, images and right-to-left text.

  • gpusched

    github.com

    A VRAM-aware GPU job scheduler for a single machine: declare how much memory each shell command needs, and it places jobs the moment a GPU has room and reports when a guess was wrong.