Reference

Supported languages

JDoodle runs 114 languages, frameworks and databases in the IDE.

This page is about what each language can do. For the exact language and versionIndex values the API expects, see languages and versions.

Languages with multi-file projects

41 languages have an Advanced variant. That is the multi-file one: several source files, your own folder structure, and a build step.

Java, HTML/CSS/Javascript, C, C++, C++ 14, C++ 17, C99, C#, PHP, Perl, Ruby, Python2, Python3, Scala, VB.NET, Haskell, Go, Swift, Groovy, Fortran, Lua, R, Ada, D, Dart, FreeBASIC, Verilog, NodeJS, Bash, COBOL, Assembler (NASM), OCaml, Elixir, Nim, Kotlin, Deno, Crystal, TypeScript, C++ 20, C++ 23, Bun

Everything else is single file. See multi-file projects.

Languages that take libraries

23 languages let you add third party libraries from the Libraries panel in the IDE. Name the package and it is installed before your code runs.

Language Where the package comes from
Java Maven
C Arch Linux
C99 Arch Linux
C++ Arch Linux
C++ 14 Arch Linux
C++ 17 Arch Linux
PHP Packagist
Perl CPAN
Python 2 pip
Python pip
Ruby RubyGems
Scala Maven
Bash Shell Arch Linux
C# NuGet
VB.NET NuGet
Swift You edit the project file yourself
Groovy Maven
Lua LuaRocks
R Language CRAN
Dart Pub Dev
NodeJS npm
Kotlin Maven
TypeScript npm

Full stack and database IDEs

These are project templates rather than single languages. Each one runs a server, a database, or both.

  • Frontend. React, Vue
  • Backend. Express, Spring Boot, Flask, Laravel
  • Database. PostgreSQL, MySQL, MongoDB

What assessments accept

Assessments take single file languages only.

The multi-file Advanced variants, the full stack templates, the databases, HTML/CSS/Javascript and Blockly cannot be set as an assessment question. If you need a student to write across several files, set it as a project instead.

See question types.

What next

This website uses cookies to ensure you get the best experience on our website.