Deploy a Hono API

Hono is a small, fast web framework for APIs, built on Web Standards. This guide deploys a Hono app on Eurobase, on European infrastructure, in one of three ways:

One-click deploy from a template

The template is a minimal Hono app that deploys without configuration. Copy it to your GitHub account, then create a Eurobase project from your copy.

Deploy from a GitHub repo

  1. Create an account and connect GitHub: open GitHub in the sidebar and install the Eurobase GitHub App on your repository. Private repositories work.
  2. In Projects, select New project. The project name becomes your address, <name>.eurobase.dev.
  3. Choose the repository. In a repository with several apps, choose the root directory of this one.
  4. Eurobase detects Hono with its Wrangler config and runs it on V8 isolates.
  5. Select Save and Deploy. Your app goes live once it passes its check.

Deploy with your coding agent

Connect your agent to the Eurobase MCP server once. In Claude Code:

claude mcp add --transport http eurobase https://api.eurobase.dev/mcp

In Codex:

codex mcp add eurobase --url https://api.eurobase.dev/mcp
codex mcp login eurobase

Signing in opens Eurobase in your browser, where you choose the projects the agent may use and what it can do. Cursor, Zed and VS Code are on AI agents.

Then, in your repository, ask:

Deploy this project on Eurobase.

The agent creates the project, starts the first deployment and follows it until your site answers at <name>.eurobase.dev. Secrets never pass through the agent: add them in the project's Secrets.

How Eurobase runs Hono

Eurobase packages your Hono app with Wrangler and runs it in V8 isolates: it starts fast and costs nothing while it waits for requests. The build needs hono 4.0.0 or later and runs the build command from your Wrangler config.

Limits are on Workers.

Before you deploy

  • Hono needs a wrangler.json, wrangler.jsonc or wrangler.toml. Without one, the project builds as a container. The template has one:
  • Commit exactly one lockfile: package-lock.json, pnpm-lock.yaml, yarn.lock or bun.lock.
  • Secrets reach your code when it runs, not during the build. Values the build needs must come from your repository.
  • A Worker can call other services with fetch() over HTTPS, but can't open TCP connections, so Postgres or MySQL drivers that use their wire protocol can't connect. Use an HTTP API, such as Supabase.

A minimal Wrangler config

If your Hono app doesn't have one yet, add a config next to package.json:

{
  "name": "my-api",
  "main": "src/index.ts",
  "compatibility_date": "2026-01-01",
  "compatibility_flags": ["nodejs_compat"]
}

Declare no KV, D1, R2, Durable Objects or queues: those bindings fail the build.

Next steps

  • Every push to the project's branch deploys again; roll back from Deployment history. See Getting started.
  • Connect your own domain from Domains in the sidebar.
  • Add a database with Eurobase + Supabase.
  • Read every request in the project's Logs.