Skip to main content
Follow this quickstart to add Base44 to your Hono project. You’ll create a Base44 backend, define entities, and integrate the SDK into your API routes.
The CLI requires Node.js 20.19.0 or higher.

Setup

1

Install the Base44 CLI

Install the Base44 CLI globally:
npm install -g base44
2

Create a Base44 backend

Navigate to your Hono project directory, then run:
base44 create
If you’re not already logged in, the command will prompt you to authenticate.Select Create a basic project when prompted. This creates the backend files within your Hono project directory. Then follow the prompts to configure your project.When you create a project, Base44 skills are included automatically, providing your AI agent with instructions and context for Base44 tasks.
3

Configure the output directory (optional)

If you’re serving static files with Hono, update config.jsonc to point to your build output. Add or modify the site.outputDirectory field:
{
  "site": {
    "outputDirectory": "dist"
  }
}
If you’re building a pure API with Hono and not serving a frontend, you can skip the outputDirectory configuration or omit this step.
4

Define entities

Create entity schemas to define your data structures. Entity files must be placed in the base44/entities/ directory.For example, create base44/entities/task.jsonc:
{
  "name": "Task",
  "type": "object",
  "properties": {
    "title": {
      "type": "string"
    },
    "completed": {
      "type": "boolean",
      "default": false
    }
  },
  "required": ["title"]
}
5

Push entities to Base44

Push your entity schemas to Base44:
base44 entities push
This command synchronizes your local entity definitions with your Base44 backend, making them available for use in your application. See entities push for more information.
6

Install the Base44 SDK

Install the Base44 JavaScript SDK:
npm install @base44/sdk
7

Create a Base44 client

Create a Base44 SDK client in your project. The appId can be found in your base44/.app.jsonc file.For example, create lib/base44.js:
import { createClient } from '@base44/sdk';

export const base44 = createClient({
  appId: 'your-app-id-from-app.jsonc'
});
8

Use the SDK in your API routes

Use the Base44 SDK to interact with your entities in Hono route handlers. For example:
import { Hono } from 'hono';
import { base44 } from './lib/base44Client';

const app = new Hono();

// Get all tasks
app.get('/api/tasks', async (c) => {
  const tasks = await base44.entities.Task.list();
  return c.json(tasks);
});

// Create a new task
app.post('/api/tasks', async (c) => {
  const body = await c.req.json();
  const newTask = await base44.entities.Task.create({
    title: body.title,
    completed: false
  });
  return c.json(newTask, 201);
});

export default app;
Use the exact entity name from your schema when calling the SDK, including capitalization. By convention, entity names begin with a capital letter. For example, if your schema has "name": "Task", you access it as base44.entities.Task.list().
9

Run your API locally

Start your Hono development server to test your integration. From your project root, run:
npm run dev
Your Hono API will connect to your Base44 backend through the SDK client, allowing you to work with your deployed entities in real-time.

Next steps

Now that your Base44 backend is integrated with your project, you can:
  • Use the SDK to add more functionality to your API.
  • Add entities, backend functions, and agents.
  • Continue building your API and deploy it according to your chosen runtime.

See also