Axeom Logo
Axeom.

Installation

Get up and running with Axeom in seconds.

Axeom is designed to be low-friction. You can install it using your favorite package manager.

For the best experience, we recommend using Bun as it provides the fastest startup times and native support for the Axeom engine.

Install the Core

The @axeom/framework package provides the high-performance engine, the standard schema validator (s), and core structured logging.

npm install @axeom/framework
pnpm add @axeom/framework
bun add @axeom/framework

Choose your Adapter

To keep your production bundle weightless, Axeom adapters are installed separately. Choose the one that matches your runtime environment.

For Web Standards (Next.js, Vercel, Cloudflare)

npm install @axeom/web

For Node.js (Express)

npm install @axeom/express

Manual Setup

For a quick start, you can define and ignite your engine in a single file (e.g., index.ts).

Axeom runs natively on Bun and Deno with zero dependencies.

import Axeom from '@axeom/framework';

const axeom = new Axeom();

axeom.get("/", () => "Welcome to the Weightless World.");

// Ignite natively with a callback
axeom.listen(3001, () => {
  console.log("Axeom Ignite: http://localhost:3001");
});

export type AppType = typeof axeom;

Node.js requires the @axeom/express bridge to handle Fetch requests.

import Axeom from '@axeom/framework';
import { createExpressAdapter } from '@axeom/express';

const axeom = new Axeom();

axeom.get("/", () => "Welcome to the Weightless World.");

// The adapter returns the configured server instance
const server = createExpressAdapter(axeom);

server.listen(3001, () => {
  console.log("Axeom Express Bridge: http://localhost:3001");
});

export type AppType = typeof axeom;


Integration Guides

Axeom's "Write Once" philosophy means you can take your blueprint and plug it into any existing infrastructure.

Existing Express Apps

If you already have an Express server and want to add Axeom as a sub-route:

import { createExpressAdapter } from '@axeom/express';
import express from 'express';
import axeom from './app'; // Your Axeom blueprint

const server = express();

// Use Axeom as middleware
server.use("/api", createExpressAdapter(axeom).app);

server.listen(3000);

Next.js (App Router)

Integrate Axeom into your Next.js API routes to share types between your frontend and backend.

// app/api/[[...axeom]]/route.ts
import { createNextHandler } from '@axeom/web';
import axeom from '@/server/app';

export const { GET, POST, PUT, DELETE, PATCH } = createNextHandler(axeom);

Technical Requirements

To maintain peak performance, Axeom requires:

  • TypeScript 5.0+
  • Node.js 18+ (if not using Bun or Deno)

Axeom uses static type analysis to provide E2E safety. Ensure your tsconfig.json has strict mode enabled for the best experience.

On this page