
Security News
The Hidden Blast Radius of the Axios Compromise
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.
Simple and high performance web server structure for building scalable, practical and fast server applications.
const Orbty = require("orbty");
orbty = new Orbty();
orbty.get("/welcome", ({ query }) => {
return { hello: "world" };
});
orbty.listen(8080)
Installation is easy with the npm command
$ npm install orbty
Define how the data will be sent in the response.
// use simple function return
orbty.post("/post/:id", Orbty.json(), ({ body, params }) => {
return {
id: params.id,
content: body.content
};
});
// use response
orbty.post("/post/:id", (req, res) => {
res.json({
id: req.params.id,
content: req.body.content
});
});
Orbty gives you the possibility to treat errors as you see fit. We recommend using the HttpException:
orbty.get("/", (req, res) => {
throw new Orbty.HttpException("Message error");
});
Set HTTP response status:
orbty.get("/posts/:id", ({ params }) => {
if (params.id === "1") {
return "found";
}
throw new Orbty.HttpException("Post not found", 404);
});
Create your own errors with your own status codes. Set code attribute with HTTP status:
class NotFound extends Orbty.HttpException {
constructor(message) {
super(message, 404);
}
}
Use:
orbty.get("/posts/:id", ({ params }) => {
if (params.id === "1") {
return "found";
}
throw new NotFound("Post not found");
});
Or use single response:
orbty.get("/posts/:id", ({ params }, res) => {
if (params.id === "1") {
return "found";
}
res.status(404).send("Post not found");
});
Capture error handlers:
orbty.error((error, req, res) => {
console.error(error);
});
Orbty is compatible with all your favorite express middleware and the syntax is the same. We decided to keep the same syntax for its familiarity and simplicity.
const Orbty = require("orbty");
const middleware = require("my-middleware");
const orbty = new Orbty();
orbty.use(middleware);
// ...
The body-parser middleware already integrated with Orbty.
const Orbty = require("orbty");
const orbty = new Orbty();
orbty.post("/posts", Orbty.json({ extended: true }), ({ body }) => {
return body;
});
orbty.post("/posts/comment", Orbty.text(), ({ body }) => {
return body;
});
// ...
Send static files through your api. Orbty contains a middleware that solves this easily:
const Orbty = require("orbty");
const orbty = new Orbty();
orbty.use(Orbty.static(`${__dirname}/media`));
orbty.use(Orbty.static(`${__dirname}/photos`));
// ...
We currently have a separate Cache management module for Orbty and also compatible with Express. Check orbty-http-cache.
An Orbty instance acts as a router.
const Orbty = require("orbty");
const orbty = new Orbty();
const orbtyV2 = new Orbty();
orbtyV2.get("/", () => "This is v2 API");
orbty.use("/v2", orbtyV2);
Use Orbty with https and others http protocols:
const https = require("https");
const Orbty = require("orbty");
const fs = require("fs");
const orbty = new Orbty();
orbty.get("/", () => {
return "this secure server";
})
// Node JS native documentation
const options = {
key: fs.readFileSync("secury.pem"),
cert: fs.readFileSync("secury-cert.cert")
};
https.createServer(options, orbty.server()).listen(443);
FAQs
Simple and high performance web server structure for
We found that orbty demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.

Research
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.

Research
Malicious versions of the Telnyx Python SDK on PyPI delivered credential-stealing malware via a multi-stage supply chain attack.