// runs on Node.js, Bun & Deno

Unleash your server development.

An ultra-efficient JavaScript server framework for Node.js, Bun, and Deno. Fast by default, fully yours to configure.

src/Controllers/UserController.ts
import { Controller, Get, Post, Body } from '@vercube/core';

@Controller('/users')
export class UserController {
  @Get('/')
  async list() {
    return [{ id: 1, name: 'Ada' }];
  }

  @Post('/')
  async create(@Body() data: { name: string }) {
    return { id: 2, ...data };
  }
}

Built for modern development

Everything you need to ship fast, type-safe servers, and nothing you don't.

Router
GET/users200
POST/users201
GET/users/:id200

Decorator-based routing

Declarative controllers and method decorators map requests to handlers, with zero boilerplate.

vercube dev
$ vercube dev_
resolving modules
bundling with rolldown
Ready in 43ms

Blazing fast

Powered by Rolldown for minimal overhead and instant cold starts.

Container
LoggerConsoleLogger
DatabasePrismaClient
MailerResendMailer

Dependency injection

Clean, testable, scalable apps thanks to first-class built-in DI.

Request
GET /users
accept: application/json
Response
200 OK
content-type: application/json

Web-native HTTP

Build on the platform APIs you already know: Fetch, Request, and Response.

import { createApp }
from '@vercube/core'
export default app_

ESM-First

A modern architecture built fully around native ECMAScript modules.

server.port
logger
cors

Fully Configurable

Sensible defaults out of the box, with complete control when you need it.

const app: App = createApp()
inferred: App

Type-Safe by Design

End-to-end TypeScript with decorators and full type inference.

Measurably faster

A container and decorators, at the speed of a bare router. Same routes, same machine, one run of the open benchmark suite on Node, September 2026.

Against the fast routers

no container, no decorators
Vercube Fastest 99,030 req/s
Fastify 97,072 req/s
Hono 91,927 req/s
Elysia 90,005 req/s
h3 87,526 req/s

Against frameworks with a container

the ones you actually choose between
Vercube Fastest 99,030 req/s
Rikta 98,682 req/s
Ts.ED 46,909 req/s
NestJS 39,833 req/s
routing-controllers 35,155 req/s

GET /, a two-byte text response.

Node 24, 500 connections, 10s per route. Run it yourself: vercube/benchmarks