Merlijn Vos

Merlijn Vos

@merlijn.bsky.social

Lead Applied Engineer cognition.ai • Open Sourcerer (tus.io, uppy.io, unifiedjs.com) • Color scheme connoisseur • Living in the terminal • Dabbing in the mainframe

57 Followers 335 Following 75 Posts Joined Aug 2023
2 months ago
Post image

POV: you ask Claude Code for only one big task 🥲

1 0 0 0
3 months ago

I never said it was difficult to understand, it is difficult to produce when working on something. For me, and presumably many, it's more likely to write older, less elegant syntax (hardcoded values, more classes, more media queries, etc)

1 0 1 0
3 months ago
Post image

dunno if it's because I've been using too much Tailwind or I'm getting old but my mind can't produce this kind of CSS. Like, you like at the page and you think 'right, this calls for the 'ol :is + clamp + cqi unit'

3 0 1 0
3 months ago
Post image

One thing I cannot stand when using Cursor/VS Code is having lots of panes open at the same time. I basically want to only do one thing at a time, whether that's code, agent view, file tree, or the terminal.

To make the terminal always use full screen, you can override the default cmd+j of Cursor:

2 0 0 0
6 months ago
Preview
Use the automatic runtime for type checking by remcohaszing · Pull Request #83159 · vercel/next.js What? TypeScript understands 2 types of JSX runtimes. The classic runtime looks at the React.JSX namespace in the file. The automatic runtime looks at the JSX namespace exported from react/jsx-runt...

While I initially ran into the problem, the deep dive was performed by @remcohaszing.nl‬, who also already made a PR for Next.js, an issue to Preact, and clarifications to TS docs 💯

github.com/preactjs/pr...
github.com/vercel/next...

3 0 0 0
6 months ago

First of all Uppy is removing preact/compat from its usage, as it can easily just rely on preact, to immediately resolve problems

Next.js should change from "preserve" to "react-jsx", as it actually compiles to automatic

preact/compat should not declare the React UMD namespace

1 0 1 0
6 months ago

Because the classic runtime (which Next.js uses) looks at the global UMD JSX type, and preact/compat also ships a global type, the two start conflicting. Even if preact/compat is a transient dependency

So who should change what?

1 0 1 0
6 months ago

Uppy uses Preact for it's UI components, with wrappers for all major frameworks for first-class support

We shipped some new components which import from preact/compat and suddenly Next.js apps, which use "jsx": "preserve", have thousands of JSX errors

1 0 1 0
6 months ago

Why this transition to automatic?

No more `import React` in every file, smaller/tree-shakable output via jsx/jsxs helpers, dev vs prod helpers (better warnings), and enables faster/leaner runtime + alternative JSX runtimes — simpler DX and better optimizations

2 0 1 0
6 months ago
Post image

"jsx" controls how JSX is emitted in JavaScript files

TypeScript understands 2 types of JSX runtimes. The classic runtime looks at the React.JSX namespace in the file. The automatic runtime looks at the JSX namespace exported from react/jsx-runtime or react/jsx-dev-runtime

2 0 1 0
6 months ago

A new release of Uppy uncovered a rabbit hole of JSX type issues in the ecosystem between @preactjs.com‬, @nextjs.org, and @typescriptlang.org‬

A refresher on the TS "jsx" option, what Next.js and Preact are doing wrong, and what's next 👇

3 0 1 0
6 months ago
Post image

I just need to add one more badge to the readme bro, trust me one more badge and it will all make sense

2 0 0 0
8 months ago
Preview
Improved pull request "Files Changed" experience feedback · community · Discussion #163932 Important You can opt in to the public preview from any pull request via “✨Try the new experience” in the upper-right corner. You can return to the classic view by clicking the “switch back” link. ...

GitHub is finally tackling the PR review UX, including large PRs 😍

github.com/orgs/commun...

3 0 0 0
8 months ago

Had to deploy an SSR @astro.build site to @vercel.com because I simply couldn't get it to work on @cloudflare.social workers. Mysterious WASM errors even though I configured Astro to only do image optimization at build time 🤔

0 0 0 0
8 months ago

What's the panic about Radix UI being in a poor state and/or unmaintained? What did I miss?

2 0 1 0
9 months ago
Wake up, Remix! It's time to go wake up Remix! Here's what we're building and what it means for React Router.

Remix is dead. Long live Remix.

remix.run/blog/wake-u...

0 0 0 0
9 months ago

Sonnet 4 passes the vibe check

0 0 0 0
10 months ago
Preview
Zed: The Fastest AI Code Editor - Zed Blog From the Zed Blog: Zed is now the world's fastest AI code editor.

If Zed is as good as Cursor at agents I would much prefer it over a VS Code experience.

But hard to imagine it can be as good seeing the difference in funding and AI-focussed hiring at Cursor/Windsurf 🤔

zed.dev/blog/fastest...

0 0 0 0
11 months ago
Preview
tus Node.js server 2.0.0: integrate in all meta-frameworks and JS runtimes | tus.io

📢 tus Node.js server 2.0.0 is out!

You can now get resumable uploads in all meta-frameworks and Node.js compatible JS runtimes ⚡

I wrote about it in a new blog post 👇

tus.io/blog/2025/03...

6 1 0 0
1 year ago

Very nice! I recently rewrote a tus.io server work in multiple runtimes. Will take a look if there is anything useful I can steal 👀

bsky.app/profile/merl...

3 0 0 0
1 year ago
YouTube
Introducing Claude Code YouTube video by Anthropic

I recently came to acceptance that I must mostly switch to Cursor from @neovim.io to stay relevant. But if Claude Code CLI will be any good, neovim is back baby. Can just pop it open in a floating terminal.

youtu.be/AJpK3YTTKZ4

1 0 0 0
1 year ago

Releasing this soon under a new major version together with bumping the required Node.js version up from 16

1 0 0 0
1 year ago

In short, it means rewriting all request handlers to work with Request/Response (web API) instead of http IncomingMessage / http ServerResponse (Node.js specific) as we can turn the req/res from Node.js into the web APIs but not the other way around.

1 0 1 0
1 year ago
Refactor server to run in all (Node.js compatible) runtimes and meta frameworks by Murderlon · Pull Request #710 · tus/tus-node-server Closes #461 Refactor the request handlers and hooks to be based on Request (from the fetch API) instead of http.IncomingMessage/http.ServerResponse (which are Node.js specific) as we can turn the N...

I refactored the tus.io (resumable uploads) Node.js server to work in all meta frameworks (such as Next.js, Nuxt, SvelteKit, etc) and other JS runtimes with a new `handleWeb()` method

Not a trivial change, but very happy the server can run (almost) everywhere now.

github.com/tus/tus-node...

3 0 1 1
1 year ago

Unfortunately it's not what I mean. I don't want to manually add every node_modules folder across 25+ projects. In general I want to ignore a bunch of file extensions and folder patterns.

0 0 1 0
1 year ago

Oh I didn’t know. Thanks!

1 0 1 0
1 year ago

The feature I really wish @raycast.com would have is the ability to ignore files/folder for file search. Half of the time I only get results from my node_modules because there's always some file that matches in there

0 0 1 0
1 year ago
Post image

At this point it's better to ask, what can't you do with Postgres?

Here's an example from @pontusab.bsky.social of doing network requests.

2 0 0 0
1 year ago

Moving back to Homebrew from Nix home-manager after a year. Nothing about it is worth it for personal computers. All that effort for a reproducible machine you replace, what, once every 6 years?

Back to simple.

0 0 0 0
1 year ago

✨Redid the authentication system

It's now using openauth.js.org for universal, standards-based authentication. Self-hosted with sst.dev.

Live on the demo environment too
stack.merlijn.site

1 0 0 0