Building: ⬡ https://xitter.cf/t.co/DPATjgvcxg ⁘ https://xitter.cf/t.co/CbRZQqeINV

Joined April 2022
Include

Only show posts containing:

Exclude

Hide posts containing:

Time range
-
Minimum likes
Ugi Stelmokaitis retweeted
Introducing Kirari ✨ A tiny, DOM-free syntax highlighter for the web. • 2.9 kB gzipped core • 48 languages • custom theme • Streaming support • Zero runtime dependencies Built to be lightweight and customizable. kirari.sh
11
30
2
489
17,930
Replying to @Hiljaa
True, it's nice for streaming. But it can't reach inside a textarea, and it can't do bold or italic. Kirari's tokens already have offsets, though, so a small Highlight API adapter would be easy.
1
12
Replying to @Hiljaa
Kirari renders HTML on the server and at build time, where there's no DOM. The Highlight API needs JavaScript running in the browser, so code would show unstyled until it loads.
1
1
40
Good call. I will consider adding that!
5
Replying to @songlairui
Agreed. Future editors can stay minimal. Syntax highlighting for humans. Semantic tools and navigation for AI. Kirari already leans that way.
72
Replying to @alspinu
Cool, Sourceshot looks nice. Kirari should work pretty well for that. It’s DOM-free so the CLI side is straightforward, and it’s tiny. Which languages are you mostly using?
1
11
Replying to @kalapowered
The whole library is smaller than my last commit message!
63
Replying to @heyjonmor
Mostly size and no WASM. Lightweight core with streaming and CSS themes.
125
Replying to @alibey_10
Good idea! I’m already working on a comparison page covering Shiki and a few others.
183
Replying to @alspinu
Thanks mate! Built it specifically as a lightweight alternative to Shiki. Curious, which languages do you use most?
1
140
Replying to @RyanJ_KOL
Kind of in between. Kirari saves checkpoints at line breaks where nothing is open (strings, comments or JSX). New chunks only rescan from the last checkpoint. If a chunk ends inside a string or comment, rescanning starts where it opened. This makes streaming much faster: 8 KB of TSX streamed character by character dropped from ~13s to 0.2s, with identical results to full tokenization. Currently supports JS, TS, JSX, TSX, JSON, JSONC and Python. Other languages still retokenize fully, but checkpoint support can be added if there's demand.
1
1
450
Replying to @ravixalgorithm
thanks mate!
1
544
Introducing Kirari ✨ A tiny, DOM-free syntax highlighter for the web. • 2.9 kB gzipped core • 48 languages • custom theme • Streaming support • Zero runtime dependencies Built to be lightweight and customizable. kirari.sh
11
30
2
489
17,930
Ugi Stelmokaitis retweeted
Today we're open sourcing the new Chat SDK, a unified TypeScript SDK for building chat bots across Slack, Microsoft Teams, Google Chat, Discord, and more. Now in public beta. ▲ ~/ 𝚗𝚙𝚖 𝚒 𝚌𝚑𝚊𝚝 Let's see how it works ↓
155
397
151
4,097
834,674
Ugi Stelmokaitis retweeted
#X Space interaction 🎙️
1
109
Important clarification 👇 `satisfies` does NOT affect runtime behavior It: • Does NOT merge objects • Does NOT override values • Is purely a type-checking feature
26
✅ satisfies operator (TS 4.9+) ✔️ Enforces the shape ✔️ Preserves literal types ("#5a58f2") ✔️ Better autocomplete & inference
1
34
❌ Type annotation (: ThemeSchema) This narrows the object to ThemeSchema ➡️ hex becomes string ➡️ Literal types are lost ➡️ Worse inference
1
105
Been working on a Design System and ran into a great TypeScript nuance that’s easy to miss 👀 The difference between : ThemeSchema vs satisfies ThemeSchema 🧵⬇️
1
161