Remix.run Logo
skiniks 2 hours ago

You're right about the messaging being confusing, I've been writing everything solo, so I'm definitely open to PRs that help with the copy. To clarify: "Rust-powered" refers to the server runtime itself, not just the bundler. The actual HTTP server, RSC renderer, and routing are all written in Rust (using an embedded V8 engine to execute your React components). It's not just Rolldown doing the bundling.

On the npm integration point: what I should have said is that rari's Rust runtime handles traditional node_modules resolution (require/import from node_modules), which is actually pretty rare for Rust-based JS runtimes. Deno, for example, uses npm specifiers instead of node_modules.

Great feedback on the tagline too. "Zero to RSC in minutes" is way clearer than what we have now. The codebase is definitely ahead of the docs, I've been focused on getting the runtime solid first, but clearly need to catch the documentation up.

Thanks for taking the time to dig in and give constructive feedback. This is exactly the kind of input that helps make it better.

lionkor an hour ago | parent | next [-]

V8 is C++, so why isn't it "C++ powered"?

skiniks an hour ago | parent | next [-]

Technically you could say that, but the entire server runtime is written in Rust. V8 is just the embedded JavaScript engine. By that logic, every Node.js or Deno app would be "C++ powered" since they all use V8.

koakuma-chan an hour ago | parent | prev [-]

They are using Deno

mpeg 2 hours ago | parent | prev [-]

Yeah I wrote my comment initially thinking it was just rolldown being used, so the "rust-powered" was confusing, I think the tagline is actually ok now that I know this, but really you're doing two things here

1/ an alternative framework for RSCs similar to nextjs, tanstack or react router

2/ a rust runtime for javascript, similar to node, deno or bun (except maybe not as general purpose)

skiniks an hour ago | parent [-]

Exactly! Those are the two main layers.

The runtime piece is definitely less general-purpose than Node/Deno/Bun. It's optimized specifically for React Server Components with things like streaming, Suspense boundary handling, and server action execution baked in. You wouldn't use it to run arbitrary JS apps.