---
title: "Deploy SvelteKit on App Platform | Hostman Docs"
description: "Deploy a SvelteKit app on Hostman App Platform as a static frontend or with server-side rendering. Learn the build process, adapters, and settings."
---

> For the complete documentation index for AI agents, see [llms.txt](https://hostman.com/llms.txt).

You can deploy SvelteKit [as a frontend app](https://hostman.com/docs/app-platform/frontend-apps/) or enable server-side rendering (SSR). With SSR enabled, the app is deployed [as a backend app](https://hostman.com/docs/app-platform/backend-apps/).

> [!NOTE]
> You can't disable SSR after deployment. To change the mode, create a new app with the settings you need.

## Build Process

By default, App Platform prepares the build environment by running this command:

```shell
DEBIAN_FRONTEND=noninteractive apt-get update && apt-get install -y --no-install-recommends \
 curl \
 {% if system_dependencies %}{{ system_dependencies | join(' ') }}{% endif %} \
 && rm -rf /var/lib/apt/lists/*
```

`system_dependencies` is the list of system dependencies you specify in the dashboard. App Platform inserts them into the command during the build.

Next, App Platform installs the project dependencies. It picks the package manager (`yarn`, `pnpm`, or `npm`) based on your project files and runs the matching command:

```shell
yarn install
pnpm install
npm install
```

To build the app, App Platform runs the following command by default:

```shell
npm run build
```

Make sure your `package.json` file contains a `build` script.

The default build directory is `/build`. After the build, App Platform publishes the files from this directory.

## Deploy as a Frontend App

1.  Add the `@sveltejs/adapter-static` adapter to your project.
2.  Enable prerendering in your SvelteKit configuration.

## Deploy with SSR

1.  When creating the app, enable SSR support. The app switches to backend app mode, which means:
    -   You select a server configuration.
    -   After deployment, the dashboard interface is identical to a backend app.
    -   You can set a start command.
2.  Add the `@sveltejs/adapter-node` adapter to your project. It creates a server build in the `/build` directory.
3.  Make sure the server listens on `0.0.0.0`, not `127.0.0.1`. Otherwise, external connections won't work.
4.  If your app uses forms with server handlers (form actions), set the `ORIGIN` environment variable to the full URL of your app, for example `https://example.hostman.dev`. 

The default start command is:

```shell
node build
```
