
Security News
Happy Birthday, Shai-Hulud
It has been one year since Shai-Hulud made its first appearance on npm.
Froovo is a lightweight, fast and modular web server designed for modern applications. It is built in TypeScript and optimized to deliver high performance with a simple yet powerful architecture.
Froovo leverages a library written in C++ (based on uWebSockets.js) to achieve exceptional speeds and high efficiency in connection handling. Its main goal is to simplify development on this technology, adding practical functionalities and key enhancements to facilitate the creation of robust and scalable applications.
This project has a Code of Conduct.
Before installing, make sure you have a compatible version of Node.js (≥ 18). If this is a brand new project, initialize your package.json with:
npm init -y
Install via Git:
git clone https://github.com/kkokotero/froovo.git
cd froovo
Install from npm:
npm install froovo
import froovo, { Request, Response } from "froovo";
const app = froovo();
app.get("/", (req: Request, res: Response) => {
res.end("Hello, World!");
});
app.listen(3000, () => {
console.log("Server is running at http://localhost:3000");
});
Froovo is inspired by speed, clarity, and minimalism. Each component is simple, predictable, and easy to extend, without heavy framework dependencies.
Our goal is to provide just what you need to maximize performance and efficiency.
In the examples/ folder you’ll find various use cases; here’s a WebSocket example:
import { Server, Socket } from "froovo";
const app = new Server();
app.ws("/chat/global", {
open(ws: Socket) {
ws.subscribe("room:global");
ws.send("Welcome to the global chat!");
},
message(_ws: Socket, data: ArrayBuffer) {
const text = new TextDecoder().decode(data);
console.log("Received message:", text);
},
});
app.listen(3000);
All contributions are welcome! You can help with:
See the Contributing Guide for more details.
MIT License © kkokotero
FAQs
Unknown package
We found that froovo 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.

Security News
It has been one year since Shai-Hulud made its first appearance on npm.

Research
/Security News
Operators behind PolinRider used a compromised GitHub account to plant malware in four development versions of a Packagist package with 700,000+ downloads.

Security News
GitHub Actions now supports cache-mode, a least-privilege control on the Actions cache aimed at the cache poisoning technique behind recent compromises.