A lightweight backend framework built on Node.js core HTTP APIs with zero external runtime dependencies.
🌐 Website & Documentation: https://nodeframe.vercel.app
📦 NPM Package: @harshitclub/nodeframe
npm install @harshitclub/nodeframeRequirement: Node.js
>= 18and"type": "module"in yourpackage.json.
import NodeFrame, { parseJsonBody, logger } from "@harshitclub/nodeframe";
const app = new NodeFrame();
// Global middleware
app.use(logger());
app.use(parseJsonBody);
// Routes
app.get("/", (req, res) => {
res.status(200).send("Hello from NodeFrame!");
});
app.get("/users/:id", (req, res) => {
const { id } = req.params;
const { filter } = req.query;
res.status(200).json({
success: true,
user: { id, filter }
});
});
app.post("/users", (req, res) => {
const { name, role } = req.body;
res.status(201).cookie("session", name, { httpOnly: true }).json({
success: true,
message: "User created",
data: { name, role }
});
});
// Start server
app.listen(3000, () => {
console.log("Server running on http://localhost:3000");
});- ⚡ Zero Dependencies — Built strictly on native Node.js core modules (
http,url,buffer). - 🎯 Express-Style Routing — Methods for
app.get(),post(),put(),patch(), anddelete(). - 🔤 Dynamic Route Parameters — Automatic segment extraction (
/users/:id) toreq.params. - 🔍 URL Query Parsing — WHATWG
URLSearchParamsparsed directly toreq.query. - 🌊 Streaming JSON Parser — Built-in
parseJsonBodywith automatic400 Bad Requesthandling for malformed JSON. - ⛓️ Chainable Response API — Fluent chaining on
res.status(),res.json(),res.send(), andres.cookie(). - 🛡️ Two-Tier Error Pipeline — Isolated 4-argument error handlers
(err, req, res, next)with a 500 JSON fallback. - ⏱️ Request Logger — Built-in
logger()recording request method, URL, status code, and duration onfinish. - 🚦 In-Memory Rate Limiter — Built-in
rateLimiter()tracking IP windows with429 Too Many Requests.
For comprehensive guides, architecture deep-dives, and the full API specification, visit:
👉 https://nodeframe.vercel.app
Created by Harshit Kumar
- GitHub: @harshitclub
- LinkedIn: harshitclub
- Repository: github.com/harshitclub/NodeFrame
MIT License © 2024–present Harshit Kumar