React Meta-Framework Feels Broken, Here's Why(rwsdk.com)
rwsdk.com
React Meta-Framework Feels Broken, Here's Why
https://rwsdk.com/blog/your-react-meta-framework-feels-broken
7 comments
Aren't the "defineApp" and "route" methods in rwsdk also magic? It feels like rwsdk is just being more deliberate about when and where to introduce those magic functions.
I'm a big fan of rwsdk so far. Thanks for building!
I'm a big fan of rwsdk so far. Thanks for building!
I think a notable difference is with one, you can read the code in the file and understand what it will return. With others, you need to read the code and then do a mental join of the framework's conventions to know what it'll return.
Nope! They just return standard JavaScript.
A typical worker looks something like this:
Love that you're a fan! Remember... No magicians allowed here.
A typical worker looks something like this:
export default {
fetch({ request }) {
return new Response('ok')
}
}
DefineApp just wraps that initial entry point into something that allows us to run middleware, match the router, and render out the page or the response object.Love that you're a fan! Remember... No magicians allowed here.
A new blog post argues that today’s React meta-frameworks like Next.js and Remix are too abstract and “feel broken,” adding complexity through magic and indirection. It introduces RedwoodSDK as a simpler, more transparent alternative that prioritizes native web APIs and production-parity development.
You don't need to (and should not) add a Tl;dr comment when you post something. If you want to tell the story of how you came up with an idea, do a "Show HN". That is the correct way to self-promote on HN.
That wasn't my intent. I haven't used HN much. Will do next time. Thx!
A failed-startup and a kid later... and I'm back. I couldn't let go of the original vision of RedwoodJS, but I wanted to start from scratch. So we built RedwoodSDK, which is a React framework for Cloudflare. It starts as a Vite Plugin that gives you server-side-rendering, RSC, streaming, and realtime capabilities.
Our standards based route feels invisible, with simple pattern matching, middleware and interrupters. You receive a request and return a response. You own every byte over the wire.
There's zero magic. Just TypeScript, modules, functions, values, and types.