ESN Docs

Docs › Discord bots

Bot & App languages: 29 more languages for your bot or app

The 29 extra languages and runtimes on the ESN panel for Discord bots, Telegram bots and apps, from Crystal and Zig to Haskell and PowerShell, and how to pick them at checkout.

On top of the usual bot types, the ESN panel now has 29 more languages and runtimes for bots and apps, in its Bot & App Hosting section. Each one has been tested to install and start on ESN's nodes.

Live at checkout. All 29 are in the type picker on the Plans page, under More languages. Pick one before you check out and your server is set up with it. Some need a plan with 512 MB or 1 GB of RAM or more, and the picker tells you when you select one. Questions? Ask in the ESN Hosting Discord.

The 29 new languages

  • Crystal
  • Nim
  • Zig
  • Swift
  • Haskell
  • Perl
  • R
  • Julia
  • Scala
  • Clojure
  • OCaml
  • V
  • Erlang
  • Gleam
  • Lua 5.4 (LuaRocks)
  • C / C++
  • F# (.NET)
  • Racket
  • Common Lisp (SBCL + Quicklisp)
  • Groovy
  • PowerShell
  • Bash / Shell Script
  • D (LDC + DUB)
  • Raku
  • PyPy (fast Python)
  • SWI-Prolog
  • Free Pascal
  • Janet
  • Fortran

Already selectable at checkout

  • Discord bots: Python, Node.js, Java, TypeScript, Ruby, PHP, Deno, Go, Elixir
  • Telegram bots: Python, Node.js, Go, Java / Kotlin, PHP, Ruby

See Python bots and Node.js bots for step-by-step guides.

How they work

  • On demand. A language's runtime is only downloaded when a server using it is created, so nothing runs or takes space until someone uses it.
  • Your code, your files. Upload your bot or app in Files (see Uploading files), then press Start in the Console.
  • Check the startup settings. The Startup page shows which file the server runs and any options for that language. See Startup settings.
  • Missing file? If the Console says your main file was not found, upload your files and press Start again.

Still stuck? Use the live chat on the panel or ask in the ESN Hosting Discord. Last updated October 27, 2026.