> For the complete documentation index, see [llms.txt](https://docs.apppaas.com/start/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.apppaas.com/start/jp/frameworks/svelte.md).

# Svelte

### 1. 概要

> Svelteは、Vue、React、Angularと異なり、少ないコードで他のフロントエンドフレームワークと同じアプリケーションを作成できるという利点があります。Virtual DOMを使用しないため、ランタイムパッケージが存在せず、コンパイルされた成果物のサイズが小さくなるため、SPAの欠点を最小限に抑えることができます。

AppPaaSでは、Svelte 4、SvelteKit 2、Node 20をサポートしています。

{% hint style="warning" %}
AppPaaSでSvelteをデプロイするためには、以下の事前作業が必要です。
{% endhint %}

* プロジェクトのルートディレクトリに `adapter-node` をインストールします。
* svelte.config.jsファイル作成(以下は作成された `svelte.config.js` のコードです。)

```javascript
import adapter from '@sveltejs/adapter-node';

export default {
	kit: {
		adapter: adapter()
	}
};
```

### 2. サービス環境設定

<figure><img src="/files/ryO8j0A2ZLTUz6TZ6zmy" alt=""><figcaption></figcaption></figure>

**内部ポート**

サービスがデプロイされた後にリッスンされるポートを指します。\
一般的に、Svelteアプリケーションを作成する際には3000ポートが使用されますが、\
ソース内でそのポートを変更した場合は、変更した値を入力する必要があります。\
AppPaaSのベータ版では、指定されたポートに基づいてTCPヘルスチェックが行われます。<br>

#### 外部ポート、外部ポートの公開設定

サービスをパブリックに公開するかどうかを決定する設定です。\
デフォルトでは443に設定されており、公開設定にすると外部ドメインが割り当てられ、\
https\://{割り当てられたアドレス}を通じて外部からアクセスできます。\
非公開に設定した場合、外部からのアクセスは不可能となり、\
内部ドメインアドレスを介してのみサービス間の通信がサポートされます。

#### 自動デプロイ設定

自動デプロイを設定すると、リポジトリの選択したブランチに変更があった場合、\
その変更に対するフックを受けて、自動的にビルドおよびデプロイが進行します。

### 3. 高度な環境設定

<figure><img src="/files/mEVxJdeD5zKDRUrBcyCs" alt=""><figcaption></figcaption></figure>

#### ビルドコマンド

デフォルトでは`npm run build`が実行されます。 \
変更が必要な場合は、この値をオーバーライドすることができます。

#### **インストールコマンド**

デフォルトでは`npm install`が実行されます。 \
変更が必要な場合は、この値をオーバーライドすることができます。

#### **開始コマンド**

`node build`が実行されます。この値もオーバーライドすることが可能です。

#### **環境変数**

環境変数はKey/Value形式で入力され、入力された値はコンテナOSの環境変数として注入されます。\
注入された環境変数は、コード内で`process.env`を通じてアクセスして使用することができます。
