Pedro Cattori
banner
pedrocattori.com
Pedro Cattori
@pedrocattori.com
💿 @remix.run & @reactrouter.com at Shopify

Do sufficiently smart compilers dream of electric sheep?
Is Remix 3 "just JavaScript"? Yes.

But doesn't it use TS and JSX? Also yes.

📝 Wrote a new post about what I think "just JavaScript" should mean. Or at least what it means to me.

pedrocattori.com/posts/just-j...
Just JavaScript
If refactors break things, it ain't just JavaScript
pedrocattori.com
November 18, 2025 at 7:14 PM
Reposted by Pedro Cattori
Vite: The Documentary premieres October 9th at @viteconf.org in Amsterdam ⚡
youtu.be/46fe5AFc0tY
August 4, 2025 at 4:40 PM
Reposted by Pedro Cattori
React Router going from 11M to 16M since the start of the year. Crazy that there's so much room for growth still!

Bringing all that Remix goodness to so many users feels so good

*ofc these are just trends, so don't read too much into the absolute numbers
May 12, 2025 at 3:37 PM
My new favorite thing to say to LLMs:

> What is the steelman argument against this approach?
April 10, 2025 at 3:40 PM
When Remix adopted Vite, there were 2 notable drawbacks:

1. Dev vs. prod differences with bundling
2. Dev only supported Node as first-class runtime

@rolldown.rs will solve (1), and now @vite.dev 's Env API has solved (2)!

blog.cloudflare.com/introducing-...
“Just use Vite”… with the Workers runtime
The Cloudflare Vite plugin integrates Vite, one of the most popular build tools for web development, with the Workers runtime. Today, we are announcing the 1.0 release and official support for React R...
blog.cloudflare.com
April 8, 2025 at 2:20 PM
Reposted by Pedro Cattori
📽️ From a radical rethink to the new standard in speed and simplicity, @vite.dev v has become the go-to tool for modern web development. Discover its story and the impact shaping the future of the web



The @vite.dev Documentary is coming soon!

Stay tuned for the release date! 🚀
March 15, 2025 at 5:44 PM
🚀 babel-dead-code-elimination v1.0.7 released!

Incredible growth so far with @tanstack.com as an early adopter and now React Router v7 uses it under the hood 📈
December 16, 2024 at 9:11 PM
Tired: They over-abstracted and overcomplicated their solution
Wired: They cooked too close to the sun
December 6, 2024 at 10:12 PM
If you got on React Router v7 early, make sure you try out verbatimModuleSyntax in your tsconfig!

It'll automatically add `type` modifier when auto-importing generated types like `Route` and its what we recommend now
December 5, 2024 at 1:03 PM
Comments like this make it all worth it!

Already have improvements and simplifications to the type-safety lined up for upcoming v7.x releases 💪

bsky.app/profile/john...
I switched a Remix-using side project over to React Router v7 this past weekend and the new route-level type safety is pretty great! reactrouter.com/explanation/... been looking forward to this for a long time, code is a lot less clunky now being able to remove useParams/useLoaderData/etc.
Route Module Type Safety
reactrouter.com
December 4, 2024 at 2:58 AM
Quick demo of the new type safety in React Router v7!
Vastly improved over what we had in Remix v2

www.youtube.com/watch?v=u9r9...
Type safety in React Router v7
YouTube video by Pedro Cattori
www.youtube.com
November 26, 2024 at 5:32 PM
Every week I get more validation that moving Remix (now React Router) onto @vite.dev was a good idea.

This week is no different!

bsky.app/profile/rphl...
React Router Hono Server becomes a @vite_js plugin and is now compatible with React Router v7 (@remix_run) 🥳

It hasn't been easier to link @honojs and React Router:

npm install react-router-hono-server@latest

Then add reactRouterHonoServer() to your Vite plugins

That's all!
GitHub - rphlmr/react-router-hono-server at v2.0.0
Remix with Hono in less than 30 seconds. Contribute to rphlmr/react-router-hono-server development by creating an account on GitHub.
github.com
November 25, 2024 at 9:57 PM
💯 This is exactly why I designed React Router's `typegen` command to be used in tandem with `tsc` and didn't just hardcode typegen into `react-router build`

bsky.app/profile/josh...
💡Dev tooling is a lot friendlier to work with when "fail the build" is not the same as "fail CI".

Linting, testing, type checking, etc. - none of these things should stop your ability to build & test locally in most setups. But blocking merging a PR is a different story.
November 25, 2024 at 8:30 PM
React Router v7 is finally here!

Lots of good stuff, but I'm most excited to show off the new type safety features.

Just got a greenscreen 🟩 so I don't have any excuses not to make some demo videos!

remix.run/blog/react-r...
React Router v7
React Router v7 brings all the great things you love from Remix back to React Router
remix.run
November 22, 2024 at 11:45 PM
Incremental migration paths are hard, but lint rules are harder
November 18, 2024 at 4:48 PM
Just landed the first set of parent-route-aware types for React Router v7 . More to come (`useMatches`, `` etc..), but the ease of adding this feature is great validation of our typegen approach.

github.com/remix-run/re...
typegen: parent routes by pcattori · Pull Request #12282 · remix-run/react-router
As an example, this drastically improves typesafety for matches in meta. Previously (see #12278), you needed to cast each match. Now matches automatically knows the parent routes for each route, al...
github.com
November 14, 2024 at 11:54 PM
Ok so @astro.build's content collections are a delight to work with!

What if you could get that in any Vite-based framework?
Just nerdsniped myself on this the whole day 😅

Stay tuned...
November 8, 2024 at 7:50 PM
Reposted by Pedro Cattori
This is still a prototype, but in the first release of react-router-devtools (coming with react-router v7) you will be able to see your Remix.run calls to everything on a brand new network tab! 🔥

Execution times, orders, real-time info, data returned, everything! 🤩
November 4, 2024 at 2:07 PM