I was able to build a @remix.run v3 `lazy` function to lazy load components
The lazy loaded component retains the type of the props with an additional `fallback` prop to pass the JSX to render until it's loaded
Code: github.com/sergiodxa/re...
25.10.2025 06:12
π 2
π 0
π¬ 0
π 0
Another @remix.run v3 example. This is how you can create custom components that allow the parent to listen to custom events.
Full code: github.com/sergiodxa/re...
22.10.2025 18:29
π 4
π 2
π¬ 0
π 0
Here you have, I tried to use the `observe` function but I was not sure how to stop observing the observable once the component is unmounted (the signal does that), the observable onChange works perfectly for this
17.10.2025 05:48
π 1
π 0
π¬ 1
π 0
Another @remix.run v3 + state management library example, now Stately.ai's xstate.
Define the machine once, create the actor and subscribe to updates in the setup scope, and get a snapshot or send events on the render scope.
Full code: github.com/sergiodxa/re...
16.10.2025 23:12
π 3
π 1
π¬ 0
π 0
Next on @remix.run v3 + state management libraries, I tried @preactjs.com Signals core package.
This requires to run the effect to subscribe to the signal inside this.queueTask, otherwise it tries to re-render before Remix did the first render.
Full code: github.com/sergiodxa/re...
16.10.2025 23:11
π 3
π 1
π¬ 0
π 1
I'm trying different state management libraries, common in React, that have a JS only core and see how they integrate with @remix.run v3.
I started with Redux Toolkit. Super simple and straightforward to setup and use.
Code here: github.com/sergiodxa/re...
16.10.2025 23:10
π 4
π 1
π¬ 1
π 1
In June we announced an open governance model for React Router.
Today, we are excited to welcome Sergio XalambrΓ and @rossipedia.com to the React Router Steering Committee!
Both have made valuable contributions to Remix and React Router over the years, and we appreciate their feedback.
26.08.2025 16:05
π 30
π 6
π¬ 3
π 1
React Router OAuth2 Handbook
Implement secure OAuth2 authentication in React Router and Remix apps with practical patterns.
The early bird for React Router OAuth2 Handbook is over, but thereβs still a launch offer available.
π The Complete Package has $50 off for the first 100 buyers.
π PPP pricing is now active β for the book only.
go.sergiodxa.com/S4qaycD
14.05.2025 05:06
π 5
π 0
π¬ 0
π 0
React Router OAuth2 Handbook
Implement secure OAuth2 authentication in React Router and Remix apps with practical patterns.
Want to dive deeper into how tokens work in OAuth2 + OIDC?
Learn how to use them correctly in your Remix or React Router app.
π Join the waitlist for theΒ React Router OAuth2 Handbook:
πΒ go.sergiodxa.com/x4HNprT
16.04.2025 02:29
π 3
π 0
π¬ 0
π 0
πͺͺ The ID Tokenβs audience is the Client Application.
It contains user identity info and is meant to be consumed by the client, not by the API or auth server. Thatβs why itsΒ audΒ claim matches the clientβs ID.
16.04.2025 02:29
π 1
π 0
π¬ 1
π 0
π The Refresh Tokenβs audience is the Authorization Server.
Itβs the only one allowed to accept it and issue a new Access Token. This keeps refresh logic centralized and secure, preventing misuse by clients or other services.
16.04.2025 02:29
π 0
π 0
π¬ 1
π 0
π The Access Token's audience is the Resource Server.
Itβs the one that will validate and accept the token to give access to protected resources. This way, only the Resource Server can rely on itβitβs not meant for the client or the auth server.
16.04.2025 02:29
π 0
π 0
π¬ 1
π 0
In OAuth2 + OIDC, each token has a different audience:
π Access Token β Resource Server
π Refresh Token β Authorization Server
πͺͺ ID Token β Client App
Each audience ensures the token is used by the right party and for the right purpose.
16.04.2025 02:29
π 1
π 1
π¬ 1
π 0
ClientLoader doesnβt have access to context, this is a server only thing, rossipedia has been asking for an equivalent client version for a long time
Client side you can define it once in a separate file and just import it
08.12.2024 15:19
π 1
π 0
π¬ 1
π 0
I think @kentcdodds.com build it, he should have the code
06.12.2024 18:44
π 2
π 0
π¬ 1
π 0
On the Remix server we have a bot that can create threads when you add a emoji to a message and automatically name the thread like "π§΅ Thread for Dominik"
I use it a lot there to create them so I donβt think about the name
06.12.2024 13:00
π 3
π 0
π¬ 1
π 0
Most of that was already available before the standalone app, although the app is great, would be nice to have secure notes for things like API keys
23.11.2024 17:17
π 0
π 0
π¬ 1
π 0
Yes, you can create a group and share passwords there, you can have many groups too
23.11.2024 17:16
π 2
π 0
π¬ 0
π 0
Does this works with providers like GitHub, Google, Auth0, etc? From what I saw it seems it should since they use client id and client secrets?
23.11.2024 10:04
π 1
π 0
π¬ 1
π 0
I like the ideas it brings, specially ship less JS, but I'm not convinced the complexity is worth it, although I never tried it since I haven't used Next.js in years
I also don't like how it was approached, I always liked that React features were first tested at Meta with their scale, but not RSC
22.11.2024 00:54
π 0
π 0
π¬ 0
π 0
So you can, without Vite 6, already use the actual wrangler instead of the proxy?
20.11.2024 03:18
π 0
π 0
π¬ 1
π 0
Cloudflare, previously Pages but now switching to Workers since it has all the nice things of Pages and more features
20.11.2024 00:27
π 2
π 0
π¬ 1
π 0
How to properly build UIs, accessibility, feature proposals for JS
16.11.2024 06:43
π 6
π 0
π¬ 0
π 0
Same, I dropped CamelCase for file names after my first time someone renamed fileName to FileName and it started to cause issues on some systems but not others
12.11.2024 17:00
π 2
π 0
π¬ 1
π 0
From that point, everything is an enhancement, scoped styles and interactivity with JS
10.11.2024 03:26
π 0
π 0
π¬ 0
π 0
I think starting with HTML-only would be a great way to make it declarative and work with progressive enhancement, in the absolute worst case you get an empty element, but if the template tag loaded (because it's in the document or imported) it will still render something
10.11.2024 03:26
π 0
π 0
π¬ 1
π 0