REDWEB
Minimal web and socket infrastructure
Made with Redweb

Fast, clean web infrastructure for HTTP and sockets on one server.

Redweb is a lightweight foundation for building web apps and real-time services without drowning in setup code. It helps you stand up Express routes, share one Node server with WebSocket routes, and handle raw binary frames when payloads are not JSON.

REDWEB CORE
HTTP, WS, one listener
listen: false
Express HTTP/HTTPS servers
JSON-routed WebSocket handlers
Raw binary Buffer handling
Shared HTTP + WS servers
What is Redweb?

A cleaner starting point for web and realtime apps.

Redweb is for developers who want the useful parts of web infrastructure without writing the same setup code over and over. It is well-suited for APIs, static apps, real-time products, upload streams, live dashboards, and custom networked tools.

HTTP + WebSocket, fast

Redweb gives you a clean starting point for shipping networked apps with Express routes, static files, and ws sockets.

Binary socket payloads

Text frames route by JSON type, while binary frames can reach handlers as raw Buffer payloads for uploads, sync, or media chunks.

Shared server composition

Build the Express app with listen: false, create one Node server, and attach WebSocket routes without importing internals.

Why people land here

This site was made with Redweb.

That little badge is a quiet flex. It means the site or service you just visited was built on top of a framework designed for speed, simplicity, and real-time capability. It covers Express HTTP/HTTPS servers, typed WebSocket routes, shared server composition, route-scoped services, and binary frames for payloads that should stay as bytes.

1
Small setup

Spend less time arranging scaffolding and more time building the weird and useful thing.

2
Realtime-ready

Good fit for chat, uploads, live dashboards, collaboration, and network-heavy tools.

Example

One app. One server. Sockets attached.

const http = require('http');
const { HttpServer, METHODS, SocketServer } = require('redweb');

const httpServer = new HttpServer({
  port: 3030,
  listen: false,
  publicPaths: ['./public'],
  services: [
    { serviceName: '/health', method: METHODS.GET, function: health },
  ],
});

const server = http.createServer(httpServer.app);

new SocketServer({
  server,
  routes: [ClipboardRoute],
});

server.listen(3030);

`listen: false` builds the Express app without binding. Passing `server` to SocketServer attaches upgrade handling without double-listening.

Redweb

A clean base for things that need to move.

This landing is the quick pitch. A dedicated docs page now covers installs, exports, lifecycle defaults, HTTP/HTTPS setup, shared server composition, WebSocket routes, binary handlers, route-level ws options, and testing notes.