pggen VS bazel-postgres-sketch

Compare pggen vs bazel-postgres-sketch and see what are their differences.

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
pggen bazel-postgres-sketch
2 2
58 3
- -
0.6 0.0
about 1 month ago over 2 years ago
Go Shell
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

pggen

Posts with mentions or reviews of pggen. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-09-08.
  • We Went All in on Sqlc/Pgx for Postgres and Go
    31 projects | news.ycombinator.com | 8 Sep 2021
    If you want a code generator like this that has support for that kind of thing, https://github.com/opendoor/pggen can automatically infer these kinds of relationships based on foreign key relationships and emit slices of pointers to connect the records together in memory. It can even figure out 1-1 relationships if there is a UNIQUE index on the foreign key. There is a little mini-DSL for specifying exactly how much of the transitive closure of a given record you want to get filled in for you.

bazel-postgres-sketch

Posts with mentions or reviews of bazel-postgres-sketch. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-09-08.
  • We Went All in on Sqlc/Pgx for Postgres and Go
    31 projects | news.ycombinator.com | 8 Sep 2021
    I uploaded most of our Workspace setup here: https://github.com/jschaf/bazel-postgres-sketch. The tooling is a bunch of Go to manage the Postgres process. Basically, give it schema files and receive a running database with a tear down command.

    We make temp instances of Postgres quickly by:

    - avoiding Docker, especially on Mac

    - keeping the data dir on tmpfs

    - Disable initdb cleanup

    - Disable fsync and other data integrity flags

    - Use unlogged tables.

    - Use sockets instead of TCP localhost.

    For a test suite, it was 12x faster to call createdb with the same Postgres cluster for each test than than to create a whole new db cluster. The trick was to create a template database after loading the schema and use that for each createdb call.

  • In Praise of PostgreSQL
    3 projects | news.ycombinator.com | 5 Aug 2021
    Sure, here's sketch of how it works: https://github.com/jschaf/bazel-postgres-sketch

What are some alternatives?

When comparing pggen and bazel-postgres-sketch you can also consider the following projects:

pggen - Generate type-safe Go for any Postgres query. If Postgres can run the query, pggen can generate code for it.

goyesql - Parse SQL files with multiple named queries and automatically prepare and scan them into structs.

sqlparser-rs - Extensible SQL Lexer and Parser for Rust

pike - Generate CRUD gRPC backends from single YAML description.

goqu - SQL builder and query library for golang

better-sqlite3 - The fastest and simplest library for SQLite3 in Node.js.

sqlite

proteus - A simple tool for generating an application's data access layer.

gnorm - A database-first code generator for any language

SQLBoiler - Generate a Go ORM tailored to your database schema.

pronto - Protobuf ORM