alex's Avatar

alex

@astahmer.dev.bsky.social

Panda CSS / OSS, frenchy freelancer http://astahmer.dev

352 Followers  |  240 Following  |  82 Posts  |  Joined: 15.10.2023  |  2.0985

Latest posts by astahmer.dev on Bluesky

Preview
Linear sent me down a local-first rabbit hole | Bytemash A deep dive into local-first architecture, triggered by wondering why Linear feels so fast. Looking at the technical implementation, exploring tools like Jazz and Electric SQL, and explaining why my n...

β€œThe concept is beautifully simple: instead of your app being a fancy form that sends data to a server, it has its own local database. Sometimes the server is just another client to sync with. It can be a fundamental inversion of how we build web applications.”

bytemash.net/posts/i-went...

11.08.2025 08:24 β€” πŸ‘ 28    πŸ” 7    πŸ’¬ 1    πŸ“Œ 0
Preview
Ezno 2025 An update on the project

Wrote a quick update on my type checker and compiler project kaleidawave.github.io/posts/ezno-25/

03.07.2025 19:46 β€” πŸ‘ 25    πŸ” 4    πŸ’¬ 2    πŸ“Œ 0
Preview
Remote Functions Β· sveltejs kit Β· Discussion #13897 tl;dr Remote functions are a new concept in SvelteKit that allow you to declare functions inside a .remote.ts file, import them inside Svelte components and call them like regular functions. On the...

hard to overstate how excited i am about this RFC β€” @dummdidumm.bsky.social is doing incredible work. this raises the bar for data fetching in frameworks, and unlocks some very cool new use cases for SvelteKit. we have a lot more ideas that will build on top of this work

github.com/sveltejs/kit...

17.06.2025 17:25 β€” πŸ‘ 166    πŸ” 25    πŸ’¬ 7    πŸ“Œ 8
Preview
Sync Engines are the Future

Decent intro here. It's how apps like Linear are built. You work on the data locally and it's synced to other nodes (central server or peers in the multiplayer use case) in the background

24.04.2025 09:53 β€” πŸ‘ 9    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

Super excited about this - Vite is all about DX. Who'd be the better person to work on Vite Devtools other than @antfu.me ?

03.04.2025 04:49 β€” πŸ‘ 243    πŸ” 17    πŸ’¬ 5    πŸ“Œ 0

[this blog post] link is missing

02.04.2025 08:19 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Preview
Making a multiplayer state machine with Durable Objects Durable Objects and the Actor model: a match made in heaven

I wrote a bit on how I made a multiplayer state machine using durable objects from cloudflare

www.astahmer.dev/posts/multip...

24.03.2025 22:17 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 0    πŸ“Œ 1
Video thumbnail

having fun debugging the return type of a hono route

21.03.2025 14:24 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

Self-hosting Thymer will be super easy. Just one file. Run "thymer config". Answer a few questions. Done! No dependencies, no npm, no Docker, no spinners, no humongous downloads.

13.01.2025 21:12 β€” πŸ‘ 3    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0
Video thumbnail

Version history control #buildinpublic

20.11.2024 12:23 β€” πŸ‘ 4    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0
Preview
Thymer

Hello Bluesky πŸ‘‹ wcools on X, thought I'd give this a try as well! I'm a bootstrapped founder, mainly posting about tech and design. Launched and running Papyrs since waaay back in 2010, now also working on building our new app Thymer.com (and finally finished the new landing page today! :)

20.11.2024 11:59 β€” πŸ‘ 6    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

SAVED

github.com/microsoft/ty...

14.03.2025 08:16 β€” πŸ‘ 3    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0

I wonder what will happen to ts-morph ?

it could mean a 10x speed improvement for Panda CSS parsing step (without any change on our side!) or it could mean it just stops working 🫠

12.03.2025 17:11 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 1    πŸ“Œ 1
TypeScript is being ported to Go | interview with Anders Hejlsberg
YouTube video by Michigan TypeScript TypeScript is being ported to Go | interview with Anders Hejlsberg

your @typescriptlang.org just got 10 times faster. We sat down with Anders Hejlsberg to ask questions library authors, power users, tooling makers, and compiler contributors might have.

11.03.2025 15:05 β€” πŸ‘ 58    πŸ” 12    πŸ’¬ 4    πŸ“Œ 5

LETS GOOOOOOOO

11.03.2025 15:35 β€” πŸ‘ 4    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
showing TypeScript's creator DOOM | Anders Hejlsberg | TypeScript Showcase #11
YouTube video by Michigan TypeScript showing TypeScript's creator DOOM | Anders Hejlsberg | TypeScript Showcase #11

✨What a dream come true!✨ The co-creator of @typescriptlang.org himself, Anders Hejlsberg, took some time to look at the Doom project!

We also had a chance to chat about other TypeScript topics more broadly - and that video will go live in a few days!

DREAM. COME. TRUE.πŸš€

09.03.2025 08:23 β€” πŸ‘ 71    πŸ” 17    πŸ’¬ 1    πŸ“Œ 0

between this and neverthrow, it feels like everyone is slowly converging to the inevitable (Effect)

03.03.2025 08:58 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
TypeScript types can run DOOM
YouTube video by Michigan TypeScript TypeScript types can run DOOM

All told, it's been a year and a half of hard work to get to today. We've got so much to share about this project. Let us know what you'd like to hear about! :)

youtu.be/0mCsluv5FXA

26.02.2025 15:03 β€” πŸ‘ 151    πŸ” 34    πŸ’¬ 4    πŸ“Œ 21
Video thumbnail

tomorrow

25.02.2025 19:30 β€” πŸ‘ 8    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Preview
Speeding up the JavaScript ecosystem - Rust and JavaScript Plugins Up until recently, supporting JavaScript in Rust based tools has been deemed not worth it. The main concern is the overhead of the de-/serialization cost when sending data back and forth. But there is...

Speeding up the JavaScript ecosystem part 11 is here! This time we're looking at:

Extending Rust tools with JavaScript plugins

marvinh.dev/blog/speedin...

23.02.2025 15:37 β€” πŸ‘ 143    πŸ” 39    πŸ’¬ 9    πŸ“Œ 2

nerd-sniped myself again and made this as a TS plugin (or VSCode ext. that embeds it)

defaults (configurable):
- no suggestions AT ALL if 0 char at caret pos
- NO external completions (current file only) if <= 4 char
- removes most (unrelevant) globals

github.com/astahmer/ts-...

21.02.2025 11:43 β€” πŸ‘ 1    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Preview
Declaration file non-exported types are importable Β· Issue #38592 Β· microsoft/TypeScript TypeScript Version: 3.9.2, 3.8.3, 3.1.6 3.0.3 (and likely more) Search Terms: declaration file export, non-exported types, implicit export, dts, .d.ts, es-modules declaration Code module.d.ts expor...

TIL TypeScript allows non-exported types in declaration files to be imported
github.com/microsoft/Ty...

20.02.2025 05:41 β€” πŸ‘ 5    πŸ” 1    πŸ’¬ 0    πŸ“Œ 0
Video thumbnail

is there a way to enforce a minimum of characters before TS intellisense starts searching for any symbol in the whole project+node_modules+globals ?

ideally I'd keep suggestions from the current file but remove anything else before 3 characters as it can be quite slow to load

19.02.2025 10:30 β€” πŸ‘ 1    πŸ” 0    πŸ’¬ 0    πŸ“Œ 1

The more I work with ORMs the more I want to go back to writing plain SQL statements again.

18.02.2025 15:41 β€” πŸ‘ 39    πŸ” 6    πŸ’¬ 8    πŸ“Œ 1

credit to tamagui/astro; both have this by default I think

16.02.2025 15:04 β€” πŸ‘ 2    πŸ” 0    πŸ’¬ 0    πŸ“Œ 0
Post image

made a plugin that adds data-attributes to each JSX component:
- data-at (where it was defined)
- data-in (in which component is it being used)
- data-kind (what is the component name)

each of these data-attribute can be disabled/renamed

`pnpm add -D unplugin-jsx-source`
github.com/astahmer/unp...

16.02.2025 15:03 β€” πŸ‘ 8    πŸ” 1    πŸ’¬ 1    πŸ“Œ 0

We have a new experimental chat app demo called @roomy.chat, built on the #atproto with peer to peer connectivity and encrypted data backed up on your PDS.

I'm excited to work on this, to help figure out what digital conversations can look like under the atmosphere!

try the alpha: roomy.chat πŸ›°οΈ

08.02.2025 09:48 β€” πŸ‘ 105    πŸ” 22    πŸ’¬ 5    πŸ“Œ 0

Ongoing work for @rolldown.rs :
- Rolldown-Vite ecosystem CI (~60% passing)
- Full bundle mode HMR
- Incremental build
- Module Federation (built-in support)
- oxc minifier improvements (built-in, already with better compression ratio than esbuild and 6-9x faster than swc)

07.02.2025 15:35 β€” πŸ‘ 261    πŸ” 21    πŸ’¬ 7    πŸ“Œ 4

you can do exactly that with native CSS
`@import url(main.css) layer(default);`

developer.mozilla.org/en-US/docs/W...

31.01.2025 12:48 β€” πŸ‘ 0    πŸ” 0    πŸ’¬ 1    πŸ“Œ 0
Post image Post image Post image Post image

Let's follow this journey.

A user reads a blog post about getting started with React that mentions CRA. Let's see at what point they might get exposed to @vite.dev or the idea that CRA is a dead project!

β€’ npm: nope
β€’ github: nope
β€’ cra.dev: nope
β€’ react.dev: nope (at first glance)

25.01.2025 17:39 β€” πŸ‘ 59    πŸ” 10    πŸ’¬ 4    πŸ“Œ 0

@astahmer.dev is following 20 prominent accounts