Readit News logoReadit News
saltyaom commented on Elysia – 1.5 years feedback with Elysia on production   elysiajs.com... · Posted by u/saltyaom
saltyaom · 4 months ago
Hi, I'm an author of ElysiaJS

For past 1.5 years, I’ve been in contact with several tech companies (some consultant, some others) both that I can or can’t disclose reportedly are very positive with Elysia

I think it’s quite production ready now, and I’m happy to share

From what I gather, here is are summary that I can grasp:

- One of the fastest JavaScript backend frameworks

The performance is near that level of Golang/Rust on latest Techempower benchmark, and several others consistently. The plaintext response on TechEmpower benchmark is ~26m reqs/secs, although it's not a reliable metric and can be misleading.

It's also significantly faster than any other options in JavaScript ecosystem, and the fastest for Bun

Elysia use a Static Code Analysis, and JIT-compilation to generate the most optimized code to ensure that there is almost close to zero performance overhead. We have published this as research paper to ACM digital library.

TipTap (Editor) convert service reportedly saw 2x improvement migrating from Hono on Node to Elysia on Bun, and there are several similar cases (this was shared on X/Twitter)

- Type safety to the very limit, everything is type safe

Has built-in TypeBox but also compatible with Standard Schema, and can infers type for body, headers, query, path parameter, cookie, and response based on each status

Elysia includes Eden, a frontend RPC-like connector similar to tRPC or Hono HC but the output can be automatically infers from return type or predefined schema, and response is a discriminated union based on HTTP status without any type annotation

Almost every APIs, is fully type safe.

It’s built on an extremely complex TypeScript generic gymnastic so much that we have to maintain unit-tests in type-level, and run type performance benchmark before publishing

- Delightful Developer Experience The most frequent feedback we got is about Developer Experience.

Minimal boilerplate, no ceremony, straight to business logic. Type safety is good, so much so that you 70-80% of the time you can tell if something’s wrong directly from type warning inside an IDE (this is the feedback I got several times)

Good thing is of it happens without any additional performance overhead if not used because of Static Code Analysis

OpenAPI is seamless and can be enable in 1 line, it also features something similar to FastAPI’s Pydantic model which can turns any TypeScript type directly to OpenAPI eg. Drizzle/Prisma Query

OpenTelemetry and observability is also built in

Also WinterTG compliance, you can run on multiple runtime like Bun, Node, Deno, Cloudflare Worker, Vercel also just recently add support for Elysia for 0 configuration deployment

Or run in a meta framework via API route like Next, Next, SvelteKit, Tanstack Start Or gradually migrate or use interchangeably with Hono, Nitro or vice-versa

Other things that specifically for HN

Elysia just recently reach 15,000 stars on GitHub, and has been maintained for past 3 years since the very start of Bun (since Bun 0.1.0 went public)

I used work with multiple contract jobs for Node backend for 5 years with Express, Fastify, Nest, Koa, Feather, Sails, Adonis

Elysia the byproduct of the problems I have with all of these frameworks I works with multiple clients for past 5 years.

For bus factor, there are at least 2 people I trusted to continue the project.

I’m quite confident that Elysia is something I really, really want to you to give Elysia a chance, and I want to hear you thought how can I (we) improve Elysia.

saltyaom commented on Show HN: PrinceJS – 19,200 req/s Bun framework in 2.8 kB (built by a 13yo)   princejs.vercel.app... · Posted by u/lilprince1218
saltyaom · 4 months ago
Hi! I'm a maintainer of Elysia, the framework you claim to have outperformed.

First of all, I admire you for taking the hard way of learning to build your own stuff, especially at your age.

However, I have a concern to believe that the benchmark result is a false positive, and inaccurate.

From my experience working and maintaining the Bun HTTP framework for 3 years since the first release of Bun 0.1.0. Bun.serve is extremely fast that autocannon (the benchmark tool you're using) cannot keep up with the performance, causing the report to be skewed from hitting the limit of the benchmark tool instead of an actual framework.

This is mentioned in Bun documentation. https://bun.com/docs/project/benchmarking#benchmarking-tools

- For load testing, you must use an HTTP benchmarking tool that is at least as fast as Bun.serve(), or your results will be skewed. Some popular Node.js-based benchmarking tools like autocannon are not fast enough.

It would be nice if you could update the benchmark with the tools that can report is faster than autocannon for the most accurate result.

Other than that, I'd say great job!

u/saltyaom

KarmaCake day26September 13, 2025View Original