Skip to content
Angga7Togk edited this page Mar 19, 2026 · 11 revisions

npm version npm download npm license github stars

The Universal Transport Layer for Your Logic. GamanJS is not just another REST API framework. It is a Data Transport Engine that allows your business logic to travel across multiple channels—HTTP, IPC (Unix Sockets), and Message Brokers—without changing a single line of code in your controllers.


Features

Protocol Description
HTTP Full support (Routing, Middleware, Context, Cookies).
IPC Unix Socket, Accumulator Buffer, Newline Protocol.
MQ Redis/RabbitMQ Message Queue Integration.
gRPC High-performance ProtoBuf-based communication.
WebSocket Real-time bi-directional streaming layer.

Create a New Project

GamanJS currently only supports Bun runtime.

Install

bun install gaman

Quick Start

import { Gaman, type HTTP } from "gaman";

const app = Gaman<HTTP>();

app.get('/', (ctx) => {
  return ctx.send({
    name: 'Angga7Togk'
  })
});

app.mountServer({
  http: 3431
});

IPC Server

import { Gaman, type IPC } from 'gaman';

const gaman = Gaman<IPC>(); // you can: Gaman<HTTP | IPC>()

gaman.ipc('/tmp/profile.sock', (ctx) => {
	Log.info(ctx.json());
	Log.info(ctx.text());
	Log.info(ctx.body()); // raw data

	return ctx.send({
		name: 'Angga7Togk',
	});
});

gaman.mountServer();

Documentation

visit our Wiki

Star History

Star History Chart

All contributors ✨

A table of avatars from the project's contributors

Contributing

New Contributing welcome! Check out our Contributing Guide for help getting started.

Donate

Links

Clone this wiki locally