pgtyped
kanel
Our great sponsors
pgtyped | kanel | |
---|---|---|
34 | 10 | |
2,800 | 796 | |
- | - | |
8.7 | 9.1 | |
2 days ago | 5 days ago | |
TypeScript | TypeScript | |
MIT License | MIT License |
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.
pgtyped
-
Type-Safe Printf() in TypeScript
There is an implementation of SQL that operates on a table shaped type, entirely at type level. For your amusement: https://github.com/codemix/ts-sql
There are a bunch of more practical takes that codegen types from your database and generate types for your queries, eg: https://github.com/adelsz/pgtyped
To me the second approach seems much more pragmatic because you don’t need to run a SQL parser in a fairly potato interpreter on every build
-
ORMs are nice but they are the wrong abstraction
ORMs suck, but raw SQL embedded in your code sucks too.
This might be good time to plug my TypeScript non-ORM: https://jawj.github.io/zapatos/.
I should say I also like what I've seen of https://kysely.dev/ and https://pgtyped.dev/.
-
An effective way to build a heavy CRUD Rest API?
Thank you for suggestions they helped me finding what I was looking for. I will either pick kysely or https://pgtyped.dev/, but first I will do some tests. Thanks!
- PostgresJs: The Fastest full featured PostgreSQL client for Node.js and Deno
-
compile-time SQL validations and type generation in TypeScript & Node
Cool. How does this compare to SafeQL, PgTyped, and Postgres language server ?
-
Petrol: embedding a type-safe SQL API in OCaml using GADTs
I would instead rely on code generation like https://github.com/adelsz/pgtyped, because the embedded type-safe SQL will never fully cover all the features of vanilla SQL, for example Common Table Expression (CTE), window functions etc.
-
Deno 1.33: Deno 2 is coming
There's pgtyped, which I believe does almost the same as sqlc
https://github.com/adelsz/pgtyped
-
Kysely: TypeScript SQL Query Builder
For Postgres there is https://github.com/adelsz/pgtyped, sounds pretty much like what you describe?
-
Is postgresql-typed a good starting library for a production application?
Avoiding the cost of learning EDSL that many Haskell DB libraries provide, I found out that only postgresql-typed and postgresql-simple allow to write only raw SQL queries easily. As I extensively use pgtyped for production Node.js application, I am thinking about using postgresql-typed. While I could find many resources for postgresql-simple, the same cannot be said try for postgresql-typed.
-
This package is so underrated.
I would highly recommend trying out pgTyped if you want typesafe queries with postgres. It's fantastic!
kanel
-
Witch – macOS window switcher replacement
I'll just quickly plug Kanel (https://github.com/kristiandupont/kanel) which I use to generate Typescript types from a Postgres database. I agree with the author to think migrations-first, though I prefer to write them in SQL to ensure I can utilize all the powerful features that Postgres has to offer.
With it, I only get types for the tables and views etc., so any join will be untyped if done client-side. This is still a big win in my opinion, and I much prefer it to normal ORM's.
-
Kysely: TypeScript SQL Query Builder
I made a tool that generates Typescript types out of a live Postgres database. I've had a request for Kysely support (https://github.com/kristiandupont/kanel/issues/273), but I more or less forgot about it. I would love to hear if that would be helpful.
-
Is it possible to create a dynamic type/interface from API response
There are tools that will generate typescript types from a database. I made one for Postgres. But it also works at "compile time", i.e. it doesn't look at a live database. I am not sure if that is what you are asking?
-
Objection to ORM Hatred
That's interesting. I use Knex a lot and I agree that it's very easy to end up just writing what is basically an ORM on the spot. I haven't quite decided if I think it's a real problem though.
I created and use Kanel (https://github.com/kristiandupont/kanel) to generate Typescript types from my Postgres database which helps a lot. Knex itself has some attempt at type safety but it gets confused quite quickly, so that's where it's tempting to override things.
-
This package is so underrated.
Interesting. Someone asked me if I supported it in Kanel. At the time it was hard to extend Kanel and then I just forgot but perhaps I should take another look at it. I am not exactly overwhelmed with the types that Knex offers even though it does make an honest attempt.
-
ADVICE WANTED - Typescript PostgreSQL without ORM
I have so far found: - kanel https://github.com/kristiandupont/kanel - and pg-to-ts https://github.com/danvk/pg-to-ts
- Kanel – Turn your Postgres schema into TypeScript types
-
Podcast interview
I’ve written before about the way I let the Postgres schema act as the source of truth by generating types with Kanel (assisted by Schemalint). In addition to this, I mention a homemade framework that sort of resembles a server-side Redux. This gives me typesafe database queries that are automatically reflected all the way to the frontend. I am frequently asked to make it open source and that is still the plan. I just need to untangle it from the Submotion source code which just never seems to be high enough priority. I promise I will get around to it :-)
-
Postgres to TypeScript Interfaces and Enums
We are using Kanel[1] for this right now — is there an advantage to using this instead?
[1]: https://github.com/kristiandupont/kanel
-
Would anyone be interested in seeing a tutorial or code TS, GQL, Express, Apollo, and Postgres with no ORM?
Sure. I've been using this lib https://github.com/kristiandupont/kanel to get types from my pg database and it makes it a breeze to use raw sql + ts.
What are some alternatives?
slonik - A Node.js PostgreSQL client with runtime and build time type safety, and composable SQL.
pg-to-ts - Generate TypeScript interface definitions from your Postgres schema
kysely - A type-safe typescript SQL query builder [Moved to: https://github.com/kysely-org/kysely]
ts-sql - A SQL database implemented purely in TypeScript type annotations.
TypeORM - ORM for TypeScript and JavaScript. Supports MySQL, PostgreSQL, MariaDB, SQLite, MS SQL Server, Oracle, SAP Hana, WebSQL databases. Works in NodeJS, Browser, Ionic, Cordova and Electron platforms.
kysely - A type-safe typescript SQL query builder
Prisma - Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
typesafe-query-builder - Generate SQL queries leveraging type inference and Postgres Json functions
vramework