⚠️ This docs site and backframe.js are still under construction.

A framework for rapid development of APIs and backends

Whether you are looking to spin up a simple API in seconds, or build a complex backend for your next big project, backframe.js provides the tools you need to get started and keep iterating quickly and easily.

Out of the box TypeScript support

Read that again. No config required, no extra packages to install. Just get up and running writing TypeScript.

File system based routing

Create a file, and it becomes a route. Want to nest routes? Just create a folder. Methods are exported constants. It's that simple.

Extensible plugin system

Plugins extend the base functionality of the framework. Need to add a new feature? Just install a plugin. Want to create your own plugin? It's easy.

Batteries included, but removable

Backframe.js is designed to work out of the box, but it's also designed to be easily customizable. Write as much or as little code as you want.

No boilerplate

We go out of our way to get out of your way. No boilerplate, no config, no fuss. It's designed to be stupid simple to get started.

Admin dashboard

Backframe.js comes with a fully functional admin dashboard that allows you to make changes to your backend without writing any code.

Powerful CLI

Use the CLI to bootstrap new projects, run your server, manage your routes, add plugins, and much much more.

Built on Express

Under the hood, it's just Express. Just add TS support, intuitive routing, a powerful CLI, and a plugin system, and you have backframe.js.

Type-safe validation

Intuitive and easy-to-use type-safe input and output validation for all your methods using zod

Separation of concerns is overrated!

We have a thing against boilerplate, so we got rid of it

Simplify your codebase by keeping everything in one place

No controllers, no services, no routers. Just exported methods in files

No more jumping between files to find the code you're looking for

It's really simple, innit ? :)

Backframe.js Anatomy

Type safety that you'll just love

Typesafe input and output validation

Out of the box type safety. No config required

We re-export zod, so you can use it anywhere in your code

Input and output sanitization also included so you don't have to worry about injected or leaked fields

Backframe.js Anatomy

Intuitive plugin system

We 'borrowed' vite's intuitive plugin system API

Plugins can extend the CLI, the server, or both

Install from npm or from a local path

Add plugins to your project with a single command

Create your own plugins in minutes

Backframe.js Anatomy

Backframe.js has a cheatsheet - plugins!

Plugins are a way to extend the functionality of backframe.js. They are at the heart of the framework and the foundation on which it is built. Whilst most official plugins are still in development, once familiar, you can already see their appeal. The "plugable" nature is what allows us to maintain simplicity and ease of use, whilst also allowing for a huge amount of flexibility and customizability. We are currently working on the following plugins:

@backframe/auth

Authentication plugin for backframe.js. Enable social authentication, email/password authentication, and more on your server.

@backframe/admin

Admin dashboard plugin for backframe.js. Manage your backend without writing any code.

@backframe/storage

Storage plugin for backframe.js. Manage file uploads and storage.

@backframe/graphql

GraphQL plugin for backframe.js. Enable GraphQL on your server.

@backframe/sockets

Sockets plugin for backframe.js. Enable realtime websocket connections for your server.

@backframe/client-*

Client libraries for backframe.js to connect to your backend from mobile and web apps in your preferred language.

It's super easy, barely an inconvenience :)

Get Started