Deploy a static site
A static site is HTML, CSS and JavaScript files with no server code. This guide deploys a static site on Eurobase, on European infrastructure, in one of three ways:
- From a template, in one click.
- From your GitHub repository.
- With your coding agent, such as Claude Code or Codex.
One-click deploy from a template
The template is a minimal static site that deploys without configuration. Copy it to your GitHub account, then create a Eurobase project from your copy.
Deploy from a GitHub repo
- Create an account and connect GitHub: open GitHub in the sidebar and install the Eurobase GitHub App on your repository. Private repositories work.
- In Projects, select New project. The project name becomes your address,
<name>.eurobase.dev. - Choose the repository. In a repository with several apps, choose the root directory of this one.
- Eurobase detects a plain HTML site and publishes it as-is, without a build or a server.
- 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/mcpIn Codex:
codex mcp add eurobase --url https://api.eurobase.dev/mcp
codex mcp login eurobaseSigning 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 a static site
A root directory with an index.html is published as-is, without a build. /about serves about/index.html, and files are sent with a five-minute cache.
A Vite or React app that builds to dist or build runs on V8 isolates by default. In a project that runs as a container, choose Static site instead: Eurobase runs your build script and serves the output directory, sending unknown paths to index.html for single-page apps.
Before you deploy
- Put
index.htmlat the root directory you deploy. Apackage.json, a server file such asserver.js, or a Dockerfile next to it makes the directory an app instead. - Only files a browser site is made of are published, such as HTML, CSS, JavaScript, images, fonts and media. Hidden files and credential files are left out, and the deployment lists what it left out.
- Missing files answer 404. For custom 404 pages or single-page-app fallback, deploy a build as above.
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.