David Blass
banner
ssalbdivad.dev
David Blass
@ssalbdivad.dev
Full-time open source dev and author of @arktype.io, TypeScript's 1:1 validator optimized from editor to runtime⛵ (http://github.com/arktypeio/arktype )🌱
cursory investigation in checker.ts seems to suggest this problem would not apply since it looks for delimiters first
October 30, 2025 at 9:08 PM
the cases that begin with `${string}${string}` should be avoidable I'm interested to double check why that's going on.

unfortunately for a case like this, I tested doing the check that would be necessary to avoid `${string}${string}` an it's a huge performance hit
October 29, 2025 at 9:46 PM
yeah generally that is avoided but there are some cases where if you already have `prefix${string}` there's no way to performantly check that appending another `${string}` is a no-op so it's irrelevant
October 29, 2025 at 9:43 PM
when I was this I was like "no way it's way too long" but it actually worked instantly 🤯

obviously the inference is going to be less useful for clarity with this number of branches but the capture groups seem like they work?
October 28, 2025 at 11:21 PM
JSON Schema:
Making illegal states representable since 2007
September 7, 2025 at 6:19 PM
you haven't lived until you've seen autocomplete for "string | n"

try it in-browser 🛝🔗👇
September 3, 2025 at 4:15 PM
🌶️hover clarity is a huge part of typescript dx
August 29, 2025 at 5:00 PM
@arktype.io schemas 👉👈 JSON-serializable TypeScript
August 18, 2025 at 4:24 PM
when they see you're still .chaining() in 2025
July 28, 2025 at 4:45 PM
Yes! Everything in the repo is MIT licensed

github.com/arktypeio/arktype
July 24, 2025 at 5:37 PM
@ark/attest is the only assertion library that can snapshot TypeScript autocomplete results 📷
July 23, 2025 at 4:58 PM
Love great error messages but hate writing them?

Out of the box, @arktype.io errors are...

1️⃣clear and concise
2️⃣readable for developers and end users
3️⃣deeply customizable to your needs
July 17, 2025 at 5:39 PM
If you can type it with TypeScript, you can validate it with @arktype.io 🤝
July 12, 2025 at 5:28 PM
As far as why? For the same reason you'd want anything to be typed.

It makes the intent of the regex clearer and gives you narrowed string types for stricter checks passing specific string values around.
June 23, 2025 at 3:07 PM
Actually I just used it to get back the source of the example I deleted for you🤣
May 2, 2025 at 6:24 PM
bonus round- choose your def
May 2, 2025 at 5:07 PM
pro tip for library authors:

save yourself a ton of headaches by adding a type error for this in your main API
April 15, 2025 at 5:09 PM
The TypeScript rewrite would never have worked in Rust.

Learn why in 30 seconds.
March 11, 2025 at 7:16 PM
Managing when to inline vs. when to define a reference exactly mirrors the same problem in TS.
March 8, 2025 at 1:39 PM
ArkType is actually the first validator with the goal of introspectability the way TS has it w/ stuff like extends, so really does seek to bridge that gap as well (this works even for very complex types).
February 28, 2025 at 9:09 PM
Would be cool in some cases, but when you start to break down the problems ArkType and other runtime validators actually solve it kind of falls apart.
February 28, 2025 at 9:08 PM
Ever wished you could just use your TypeScript types at runtime?

With @arktype.io, you finally can.

All the power of the type system, fully introspectable from native JS- the possibilities are endless🔥
February 8, 2025 at 5:31 PM
Imagine a schema library having better types than the language it's written for @arktype.io ☠️
February 1, 2025 at 3:50 PM
If your team is struggling with...

☠️tsserver lag in editor
🧩complex types
🧪type testing or benchmarking

I consult and can fix your problems!
@arktype.io relies on me getting this work- referrals and retweets help a ton 🙏
January 24, 2025 at 6:31 PM
It's ready.
January 16, 2025 at 6:56 PM