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 when you can 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.

Coming to checkout. Picking one of these languages at checkout comes with the next update to the Plans page. This page will say when it's live. If you need one before then, 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? Ask in the ESN Hosting Discord. Last updated October 27, 2026.