Igal Klebanov 💥 kysely

Igal Klebanov 💥 kysely

@igal.dev

@kysely.dev co-lead. @zod.dev contributor. 🥰 TypeScript, FaaS & DBs. coined Tofu (OpenTofu). opinions are mine. igal.dev

930 followers378 following539 posts

Igal Klebanov 💥 kysely reposted

what is the *lowest* typescript version being used in actively developed / maintained projects you own or contribute to? 5.4? 5.2? 5.0? other?

trying to come up with terminology for common typescript hacks in dynamic kysely examples be like: "now take this floating table and ground it with a static alias that's known at compile-time" 🥴

i get some of the appeal of something like effect now when working on this niche processing use case. but i'm getting by quite easily without abstracting everything away, just keeping it simple.

real ones see and appreciate you @pi0.io. 🤜🤛

I was planning to work on some fun projects during the holidays, but now I'm back to OSS maintenance, and there's a lot of it. So tired.. People think OSS is fun, but it's not—especially for low-level project maintenance. It's unseen, unappreciated, and constant labor.

if i had some disorder that would get triggered from text online, i'd pay for a product that warns me, and even replaces things with the use of AI.

i have ptsd from flexbox. delete the blogpost as it hurts my feelings. jk. honestly, there should be browser extensions that do this. it should not be up to bloggers. you're just worsening the experience for most of your readers.

zod is amazing. zod omits unknown keys by default. this is dope for user input validation. this is not not dope when wrapping wrangler configuration deep in a codebase, implicitly omitting new features. you're *surprisingly* providing a subset of the language to the team. this will waste time.

if for some odd reason, you have to validate such things.. care about the evolution of the language you're wrapping. it is not owned by you. it'll expand faster than your wrapper. provide escape hatches (`passthrough`) or make sure others will expand the schema when needed (`strict()`).