mb21's Avatar

mb21

@mb21.bsky.social

Hacking on https://mastrojs.github.io – the simplest web framework and site generator. Runs on Deno, Node.js, Bun and in your browser as a VSCode extension. 
https://github.com/mb21

77 Followers  |  78 Following  |  514 Posts  |  Joined: 25.10.2023  |  2.216

Latest posts by mb21.bsky.social on Bluesky


uh, why did I have to read that?!

25.02.2026 19:33 — 👍 0    🔁 0    💬 0    📌 0

I’d be a staff-level TypeScript engineer. But only have dabbled in Rust so far. So perhaps for another role :-)

14.02.2026 12:12 — 👍 2    🔁 0    💬 1    📌 0

Interesting! Region meaning Berlin? or remote possible?

14.02.2026 07:25 — 👍 1    🔁 0    💬 1    📌 0

each row contains the same word in three different languages

13.02.2026 19:17 — 👍 0    🔁 0    💬 0    📌 0

Let us know if so! I’ve also a broken one (my 3yo did it)

08.02.2026 12:51 — 👍 0    🔁 0    💬 1    📌 0

Can I put in a computer that will download the internet from the future? Or is the sped-up box sealed?

07.02.2026 12:03 — 👍 0    🔁 0    💬 1    📌 0

What do you mean with “capturing intent via instrumentation”? I write nice commit messages. But even then, if I knew what I was doing we wouldn’t have that bug, so what even was my intent?!

05.02.2026 19:32 — 👍 1    🔁 0    💬 1    📌 0
Preview
TypeScript.fm - The Friendly Show for TypeScript Developers | Mastro.js, the Simplest Web Framework and Site Generator | Mauro Bieg | Ep 54B Mauro Bieg joins the two fools to talk about Mastro, a simple and minimal web framework and site generator. If 11ty and Astro had a baby, it might look like Mastro! With support for routing, HTML t...

Had a blast on @typescript.fm

We talked about why I started Mastro, the design decisions behind it, and why modern #webdev feels harder than it should.

Thanks a lot for having me, Kamran and Erik!

05.02.2026 16:26 — 👍 6    🔁 2    💬 0    📌 0
Preview
Everything is a route – one interface for servers, static sites, and assets | Mastro Blog Use the standards-based Request/Response-API not only for writing your server, but also for static site and asset generation.

How can a complete web framework be ~700 lines of TypeScript? For one, everything is a route in Mastro.

mastrojs.github.io/blog/2026-01...

30.01.2026 06:57 — 👍 2    🔁 0    💬 0    📌 0

“Async iterables have their own iterator helpers” erm.. citation needed. pretty sure not standardized and implemented yet?

27.01.2026 21:25 — 👍 0    🔁 0    💬 0    📌 0

Aren’t the crypto broa still waiting to upgrade from a tiny to a small database?

24.01.2026 12:02 — 👍 0    🔁 0    💬 0    📌 0

Rebuild your personal website?

23.01.2026 18:25 — 👍 1    🔁 0    💬 0    📌 0

wow, very cool! I imagine a hostcall is quite expensive? As a percentage/multiple of a normal function call, perhaps even more expensive than a syscall?

21.01.2026 19:13 — 👍 0    🔁 0    💬 0    📌 0
Preview
ESM Module Loading: Cyclic Module Records / multiple top-level awaits in different modules · Issue #1105 · web-platform-tests/interop · GitHub Description While officially supporting ESM modules, even with top-level await, WebKit doesn't actually implement the module loader spec. This leads to a race condition, where one or more modules f...

That’s the one. I even tried to get it fixed cia interop: github.com/web-platform...
Got a lot of upvotes but no takers this year.

16.01.2026 20:06 — 👍 1    🔁 0    💬 0    📌 0

I tried until I ran into the safari bug that makes it basically unusable.

16.01.2026 19:28 — 👍 1    🔁 0    💬 1    📌 0

Congrats! Developing and maintaining a complex framework takes lots of funding, and I’m glad Astro found a new home.

With Mastro, we have a different approach. The name originally stood for minimal Astro, and we’re staying true to that. At just ~700 lines, Mastro will always be easily maintainable.

16.01.2026 18:15 — 👍 2    🔁 1    💬 0    📌 0

Why would the do that? Portugal seems same lattitude as South Korea?

09.01.2026 19:04 — 👍 0    🔁 0    💬 0    📌 0

isn’t that just being friendly :)

09.01.2026 19:01 — 👍 1    🔁 0    💬 0    📌 0

A/B-test it?

08.01.2026 11:30 — 👍 0    🔁 0    💬 1    📌 0
Preview
Tips for making the Performance Panel less overwhelming Introduction The Performance Panel is used for detailed investigations on traces captured during page load or during user interactions. It's a critical tool for understanding and debugging performanc...

Web Performance Calendar day 28 when Ian Duffy shows us how to tame Chrome’s Performance panel: reduce noise, search fast, annotate, use Insights, and customize tracks

calendar.perfplanet.com/2025/tips-fo...

28.12.2025 16:40 — 👍 13    🔁 3    💬 0    📌 1
Preview
Web Components Are the Comeback Nobody Saw Coming Web components enable UI interoperability, allowing you to build reusable components that work across any framework — or to avoid frameworks altogether.

Is “web components” finally no longer considered a dirty word by anyone outside the React-die-hard circle?

thenewstack.io/web-componen...

27.12.2025 08:11 — 👍 8    🔁 2    💬 3    📌 0

I always thought that stuff should go into the standard lib?

26.12.2025 17:41 — 👍 0    🔁 0    💬 0    📌 0
Preview
Mastro: the simplest web framework and site generator No bloat, no magic, no config. Mastro gets out of the way, so that you can focus on building awesome websites.

Interesting. Being in the same boat with regards to having little time for my open source project, instead of going the LLM route, I opted for a very minimal design, which shouldn’t take much maintenance: mastrojs.github.io

22.12.2025 08:14 — 👍 1    🔁 0    💬 0    📌 0

I’d love it if things moved to “smaller bundles” (as claimed in the article). But there’s very little bundlers can do if devs want to do all the work in the client. 🫠

22.12.2025 08:09 — 👍 1    🔁 0    💬 0    📌 0
Preview
YouTube Learn what's now possible in graphic design on the web — layout, CSS Grid, and more. A series for web designers and developers, created by Jen Simmons.

m.youtube.com/layoutland

18.12.2025 18:48 — 👍 0    🔁 0    💬 0    📌 0

Congrats to both of you!

18.12.2025 18:46 — 👍 0    🔁 0    💬 0    📌 0

What’s the state of the art of local models? Anything I should try on my ARM MacBook?

15.12.2025 07:16 — 👍 0    🔁 0    💬 0    📌 0

not sure… for example, naming things is hard because of people, not because of tech.

06.12.2025 07:28 — 👍 1    🔁 0    💬 0    📌 0

Yes, RSCs are to blame. But if you’re running a server like Next.js, you’re vulnerable even if you don’t use RSCs 🫠

06.12.2025 07:25 — 👍 1    🔁 0    💬 1    📌 0

Next you write HTML by hand again instead of getting ReactShelled!

05.12.2025 18:24 — 👍 0    🔁 0    💬 0    📌 0

@mb21 is following 20 prominent accounts