Skip to content

lithia-framework/lithia

Repository files navigation

Lithia logo

Lithia

The file-based Node.js backend framework with worker-powered runtime isolation.

Build APIs with magic, speed, and Type Safety by default.

NPM version License Support Lithia

🚀 Quick Start

Build your first Lithia app in seconds:

npx create-lithia@latest my-app
cd my-app
pnpm install
pnpm dev

🪄 Magic in Action

Lithia uses a clean, file-based routing convention. No boilerplate, just focus on your logic.

// src/app/routes/hello/route.get.ts
import type { RouteHandler } from "@lithia-js/core";

const Hello: RouteHandler = async (_, res) => {
  return res.json({ message: `Hello, World!` });
}

export default Hello;
// Available at: GET /hello

✨ Features

  • Intuitive Routing: Method-based file naming (.get.ts, .post.ts) for automatic route registration.
  • Worker-Powered Runtime: HTTP, events, bootstrap, and async task execution run with explicit runtime boundaries.
  • Async Tasks: Native executeTask() and dispatchTask() APIs for isolated background execution.
  • Full-stack Ready: Native support for WebSockets, Better Auth, OpenAPI/Scalar, and Drizzle-friendly templates.
  • Modern Stack: Ships with Biome and TypeScript pre-configured for the best DX.

📖 Documentation

Everything you need to know is at lithiajs.org/docs.


🤝 Community & Support


License

Lithia is MIT licensed. Built with ❤️ by Lucas Arch and the community.


Sponsor this project

Contributors