Skip to content

Quick Start

Follow this guide to compile your first web application into a native executable binary.


Add kiln-compiler as a development dependency in your project:

Terminal window
# Using Bun
bun add -d kiln-compiler
# Using pnpm
pnpm add -D kiln-compiler
# Using npm
npm install -D kiln-compiler

In your next.config.ts (or next.config.js):

import type { NextConfig } from "next";
const nextConfig: NextConfig = {
adapterPath: import.meta.resolve("kiln-compiler"),
};
export default nextConfig;

In your astro.config.mjs:

import { defineConfig } from "astro/config";
import node from "@astrojs/node";
export default defineConfig({
output: "server",
adapter: node({ mode: "standalone" }),
});

Configure SvelteKit with @sveltejs/adapter-node and its default build output directory. Kiln currently supports this server output experimentally.

import adapter from "@sveltejs/adapter-node";
export default {
kit: {
adapter: adapter(),
},
};

Run your framework’s build followed by kiln:

Terminal window
# For Next.js:
next build && kiln -o ./bin/app
# For Astro:
astro build && kiln -o ./bin/app
# For SvelteKit:
bun run build && kiln -f sveltekit -o ./bin/app

Execute the standalone binary directly:

Terminal window
# On Linux / macOS:
./bin/app
# On Windows:
.\bin\app.exe

Open http://localhost:3000 (or http://localhost:4321 for Astro) to see your app live!