> ## Documentation Index
> Fetch the complete documentation index at: https://docs.squarecloud.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Runtimes

> Run almost any stack on Square Cloud. Supported languages, versions, and how the platform detects and runs your application.

Square Cloud runs almost any stack — Discord, WhatsApp and Telegram bots, websites and APIs, background workers, and full applications — on the same fast, secure infrastructure. You bring the code and a small configuration file; the platform detects the language, installs the dependencies, and runs it.

## Supported languages

<CardGroup cols={3}>
  <Card title="JavaScript" icon="node-js" href="../articles/getting-started-with-nodejs" />

  <Card title="Python" icon="python" href="../articles/getting-started-with-python" />

  <Card title="Java" icon="java" href="../articles/getting-started-with-java" />

  <Card title="Rust" icon="rust" href="../articles/getting-started-with-rust" />

  <Card title="Elixir" icon="droplet" href="../articles/getting-started-with-elixir" />

  <Card title="PHP" icon="php" href="../articles/getting-started-with-php" />

  <Card title="Go" icon="golang" href="../articles/getting-started-with-go" />

  <Card title="C#" icon="c" href="../articles/getting-started-with-csharp" />

  <Card title="Ruby" icon="gem" href="../articles/getting-started-with-ruby" />
</CardGroup>

<Info>
  Beyond these, many other languages and libraries work out of the box. The runtime images are flexible enough to adapt to most projects.
</Info>

## Versions

Every runtime ships two channels you can pin with the `VERSION` field in your configuration file: `recommended` (stability) and `latest` (newest). You can also pin an exact version.

| Language           | `recommended` | `latest` |
| ------------------ | ------------- | -------- |
| Node.js \[JS & TS] | 24.15.0       | 26.1.0   |
| Python             | 3.13.13       | 3.14.5   |
| Java               | JDK 25        | JDK 25   |
| Elixir             | 1.19.5        | 1.19.5   |
| Rust               | 1.95.0        | 1.95.0   |
| Ruby               | 4.0.4         | 4.0.4    |
| PHP                | 8.5.6         | 8.5.6    |
| Go                 | 1.26.3        | 1.26.3   |
| .NET/C#            | 10.0.8        | 10.0.8   |

<Tip>Prefer `recommended` unless you specifically need a newer release. See the [configuration file](/en/getting-started/config-file) for the `VERSION` and `RUNTIME` fields.</Tip>

## How it works

<Steps>
  <Step title="Language detection">
    Square Cloud detects your language automatically from the files in your upload (for example a `package.json` for Node.js or a `requirements.txt` for Python). You can override detection with the `RUNTIME` field in the configuration file.
  </Step>

  <Step title="Dependency install">
    Your dependencies file (`package.json`, `requirements.txt`, `Gemfile`, `go.mod`, ...) is installed server-side, so you don't need to ship `node_modules` or a virtual environment inside the `.zip`.
  </Step>

  <Step title="Start command">
    The `MAIN` field points at your entry file and the platform runs it with the right interpreter. For a custom start command (build steps, a static server, etc.) set `START` instead.
  </Step>
</Steps>

## What's included in every runtime

<CardGroup cols={2}>
  <Card title="Node.js 26 + tooling" icon="node-js">
    Every image bundles Node.js 26 alongside the primary language, so build tooling and JS-based utilities are always available.
  </Card>

  <Card title="ffmpeg & Chromium" icon="film">
    Media processing (ffmpeg) and a headless browser (Chromium) come preinstalled — handy for media bots, scraping and PDF/screenshot generation.
  </Card>

  <Card title="Runs as non-root" icon="shield-halved">
    Applications run as an unprivileged user for a safer, isolated environment.
  </Card>

  <Card title="Static sites" icon="file-code">
    No runtime needed? Set `RUNTIME=static` (or `html`) to serve a plain HTML/CSS/JS site directly.
  </Card>
</CardGroup>

## Next steps

<CardGroup cols={2}>
  <Card title="Configuration file" icon="gear" href="/en/getting-started/config-file">
    Learn the `MAIN`, `START`, `RUNTIME` and `VERSION` fields.
  </Card>

  <Card title="Practical tutorials" icon="graduation-cap" href="/en/tutorials/how-to-deploy-your-website">
    Deploy real projects, step by step, in your language of choice.
  </Card>
</CardGroup>
