kiss-orm

Languages and libraries

orm library

SHOW HN2020

kiss-orm

ORM for TypeScript with no query-builder, supporting full SQL queries

github.com

#typescript orm#raw sql#tagged template#postgres#repository pattern

220points
119comments
#234of 3,028 in 2020
Top 8%of 2020 by points

How HN took it

MixedNo clear lean

8 positive, 10 neutral or asking, 1 mixed, 5 critical, out of 24 comments about the project. Thread score +0.05.

Idea: 5 for, 4 againstDesign: 2 for, 0 againstExecution: 1 for, 0 againstPerformance: 0 for, 1 against

The thread, comment by comment

Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.

positive neutral or mixed critical about another commenter or something else the maker

What HN said

What people liked

  • Clean, simple approach keeping full SQL power

    From 3 comments
    • Thank you for creating Kiss ORM. I have even created a HackerNews account to be able to comment on it. I have been searching for this type of ORM in Typescript for a while. I…
      holgerw on HN
    • As a never-ORM guy I really like what this is trying to do. It seems like the best of both worlds. Kudos!
      gigatexal on HN
    • Love to see more options in this space! I've made a switch from traditional ORM (TypeORM and Sequelize) to a similar "light ORM", Pgtyped, and never looked back since. Like in…
      golergka on HN
  • Tagged template safe from injection

    From 1 comment
    • ``` sql"SOME SQL"; ``` This looks to be a "tagged template": https://basarat.gitbook.io/typescript/future-javascript/template-strings. I'm a TS user but hadn't seen that feature…
      CoffeeDregs on HN

Objections

  • Lacks eager loading, causing N+1 queries for relationships

    From 1 comment
    • It seems you cannot load relationships for a collection of entities easily without N+1 queries, unless I'm missing something. Based on the many-to-many section of the docs…
      Dragory on HN
  • Not really an ORM, more a safe query serializer

    From 1 comment
    • I actually built something almost exactly like this internally. This is awesome. But, its a far cry to call this an ORM. Its just a safe query serializer. ORM takes an object and…
      nhumrich on HN
  • No migration support out of the box

    From 1 comment
    • All these things fall short the moment you need real "production" features, such as reliable migrations (writing them by hand? no thanks. Outsourcing to another library like…
      midrus on HN

Requests

  • Eager loading of relationships

    From 1 comment
    • It seems you cannot load relationships for a collection of entities easily without N+1 queries, unless I'm missing something. Based on the many-to-many section of the docs…
      Dragory on HN
  • Changeset-style validation like Ecto

    From 1 comment
    • Thank you for creating Kiss ORM. I have even created a HackerNews account to be able to comment on it. I have been searching for this type of ORM in Typescript for a while. I…
      holgerw on HN

Questions

  • How migrations handle column renames and type changes without data loss

    From 1 comment
    • Thanks. I do not have experience with Room, but I usually prefer to control and know what is happening in my schema. For example, if your schema is automatically handled, how do…
      Seb-C on HN

Alternatives named

  • Prisma

    From 1 comment
    • All these things fall short the moment you need real "production" features, such as reliable migrations (writing them by hand? no thanks. Outsourcing to another library like…
      midrus on HN
  • Knex / Objection.js

    From 1 comment
    • I started using Objection.js and Knex last year and I think it might be the best ORM I've used on any platform. There's no way I'm going back to writing raw queries. If I did…
      wayneftw on HN
  • Pgtyped

    From 1 comment
    • Love to see more options in this space! I've made a switch from traditional ORM (TypeORM and Sequelize) to a similar "light ORM", Pgtyped, and never looked back since. Like in…
      golergka on HN
  • Ecto (Elixir)

    From 1 comment
    • Thank you for creating Kiss ORM. I have even created a HackerNews account to be able to comment on it. I have been searching for this type of ORM in Typescript for a while. I…
      holgerw on HN
  • postgres.js library

    From 1 comment
    • the template syntax reminds me of an other postgres libary https://github.com/porsager/postgres
      LorenzA on HN

Category, keywords, summaries and labels on this page were made by AI (Thread Reader v2) and not checked by hand. Each point links to the comments it came from.

Add a badge to your READMEShown on HackerShow
[![Shown on HackerShow](https://hackershow.org/badge.svg)](https://hackershow.org/show/24363493)