Postgres-first data framework
master branch - I will break it!
- Automatically build an API from your database schema and use it directly on the front-end.
- Stop writing boilerplate HTTP endpoints. Your database has tables, views, and functions.
- Stop using ORMs, micro-ORMs, & mappers. Your database has types.
- Stop writing authentication & authorization middleware. Your database has row-level security.
- A relational database is a great place for "business logic".
These are much more mature, consider them instead!
Most of these libraries are meant for server-side DB access. Grimo is focused on eliminating the server-side as much as possible (similar to Supabase).
- Schema discovery
- Strongly typed API generator
- SELECT and function query builder
- OpenAPI document generation
- Example project
- Tests
- Select queries
- Inserts
- Updates
- Deletes
- Function calls
- Selects
- Inserts
- Updates
- Deletes
- Function calls
- Support native Date, BigInt in generated types & queries, convert in/out of transports
- Joins
-
DISTINCT -
COUNT -
GROUP BY - Properly type views with
updatable/insertable - Strongly typed
.wherevalues
- Tables
- Views
- Functions
- Composite types
- Enums
- Domains
- Primary keys
- Foreign keys
-
pg_tagged_unionssupport - Binary data types
-
middleware-express -
middleware-koa -
middleware-hattip -
middleware-fastify -
middleware-bun -
middleware-elysia -
middleware-hono
-
transport-web -
transport-db(partial) -
transport-supabase(experimental)
- Investigate decoupling from
pg-promise- unsure about deno support.postgressupports all three runtimes but does not provide necessary standalone escaping/formatting -
generate-rescriptpackage - Reusable authentication & authorization
- Realtime streams
- Tooling/guidance on schema diffing migrations
- Investigate making a stand-alone server package
-
build-schemapackage for simple conventional concat/config of .sql files