Express (expressjs/express)
A minimal and flexible web framework for Node.js, built around routes and middleware, and the foundation of countless APIs and other frameworks.
Not checked by a trusted editor yet Last edited Outdated?
expressjs/express
- Stars
- 69.6k
- Forks
- 25.2k
- Language
- JavaScript
- Licence
- MIT
- Last push
- 9 Oct 2026
On GitHub: Fast, unopinionated, minimalist web framework for node.
Open on GitHubExpress is the long-standing minimal web framework for Node.js. You create an app, register routes such as app.get("/api/items", handler), and plug in middleware: functions that run in order for each request to parse bodies, check authentication, log, or handle errors. Its small core and huge middleware ecosystem made it the default starting point for Node.js servers for years.
Express 5 is the current major version. Among other changes, it passes errors from rejected promises in async route handlers to the error-handling middleware automatically, removes several long-deprecated APIs, and updates its path-matching syntax. If you follow older tutorials, the project’s migration guide lists what changed.
Body parsing is built in through express.json() and express.urlencoded(), each with a configurable size limit, while features such as CORS, sessions, and file uploads come from separate packages like cors, express-session, and multer. Express is a good choice when you want to understand and control each layer of an HTTP server.
Did this work for you?
No votes yet. Be the first.
If it did not work, the report form below tells the editors what went wrong.
See also
- 0021 Read and write files in Node.js with fs/promises A complete Node script that walks a folder, reads text files, and writes a JSON report safely, showing the everyday fs/promises calls… Beginner · Step by step · Any system Script Node.js 15 Oct 2026
- 0022 Build a small Node.js CLI with util.parseArgs A complete, dependency-free command-line tool in Node: options and flags with parseArgs, input from files or a pipe, help text, and meaningful… Intermediate · Step by step · Any system Script Node.js 15 Oct 2026
- 0027 Fix: SyntaxError: Cannot use import statement outside a module The file uses ES module import syntax, but Node or the browser is loading it as a classic script or CommonJS. Tell… Intermediate · Fixes an error · Any system Article Common errors · Node.js 15 Oct 2026
- 0089 Fix: 413 Request Entity Too Large A server or proxy rejected your request because its body is bigger than the configured limit. Find which layer set the limit,… Intermediate · Fixes an error · Any system, Linux Article Status codes · Web frameworks 15 Oct 2026
- 0263 Build a notes REST API with plain Node.js: CRUD, validation, status codes and CORS Write a small JSON API for notes using only Node.js built-ins: create, read, update and delete, input validation, correct HTTP status codes,… Intermediate · Guided project · Any system Article Making requests · Node.js · Status codes 15 Oct 2026
- 0319 Fix: npm ERR! EACCES permission denied npm cannot write to a directory it needs: the global install location, its cache in ~/.npm, or a node_modules owned by root.… Beginner · Fixes an error · Linux, macOS Article Common errors · Node.js 15 Oct 2026
History
Every saved edit is kept. The plot on the sleeve draws one line per edit. Open any edit to see exactly what changed.
- Commitpedia +1,046 chars