Titan isn’t a JS→Rust compiler and doesn’t aim to replace V8 or claim faster JavaScript execution. The design is architectural: Rust handles networking, concurrency, and deployment as a single native binary, while JavaScript is scoped to application logic inside an embedded runtime.
To improve clarity going forward, a lightweight community feedback section will be added to the docs soon, where feedback can be shared and discussed with just a username — no accounts or friction.
Thanks for the thoughtful feedback — this is helpful.
To clarify, Titan isn’t meant to be a drop-in replacement for Node or a V8 competitor. The primary goal is a JavaScript-first developer experience that compiles into a single native Rust binary, removing Node.js from production while keeping a familiar authoring model.
You’re absolutely right that Boa is slower than V8. At the moment, Boa is used during development and as the embedded JS runtime, but the core value proposition is not raw JS engine speed. The focus is on deployment simplicity, portability, and tighter control over the runtime surface. In production, the output is a single Rust binary (no Node.js dependency), and a production-ready Dockerfile is already available.
Performance parity is important, and benchmarks are on the roadmap, but the initial emphasis is on reducing operational complexity rather than outperforming Node in every scenario.
I’ve been updating the documentation to make this positioning clearer — including recent production and Docker updates. For anyone interested, the latest docs are here: https://titan-docs-ez.vercel.app/docs
Appreciate the pushback — it’s useful for refining both the project and the messaging.
Titan isn’t a JS→Rust compiler and doesn’t aim to replace V8 or claim faster JavaScript execution. The design is architectural: Rust handles networking, concurrency, and deployment as a single native binary, while JavaScript is scoped to application logic inside an embedded runtime.
To improve clarity going forward, a lightweight community feedback section will be added to the docs soon, where feedback can be shared and discussed with just a username — no accounts or friction.
Titan isn’t a JS→Rust compiler and doesn’t aim to replace V8 or claim faster JavaScript execution. The design is architectural: Rust handles networking, concurrency, and deployment as a single native binary, while JavaScript is scoped to application logic inside an embedded runtime.
If the documentation suggested otherwise or felt overly abstract, that’s on me — it’s being revised to be clearer, more concrete, and less ambiguous.
On the nginx point — totally agree that nginx + multiple Node instances is a well-understood and effective setup. Titan isn’t trying to replace that pattern or compete with it directly.
The motivation is removing Node from production entirely and shipping a single native Rust binary with a constrained runtime surface. That also enables a true multi-threaded execution model at the server level, rather than relying on process-level scaling.
In environments where that matters — simpler deployment, embedded or edge use cases, tighter control over concurrency and memory — the trade-offs look different.