It is not clear having read the article what advantage does ship-hold holds over Knex.js.

I have written an article arguing against Knex.js (and other query builders). The same arguments apply to ship-hold.

tl;dr; Knex.js (and other query builders) was designed to be a building block for ORMs; it does not add value when majority of the query is static.

Having read the documentation, my understanding is that ship-hold is a building block for ORMs. This is not made clear in this article; this article encourages direct use of ship-hold in programs.

Tech / Product Founder — building