Available Coding Environments

Explore the coding env. available for our projects.

You'll find all the options below in the "Coding Environment" drop-down.

Code widget

The Code widget provides a range of functionalities like:

  • Executing the code

  • Creating an exercise

  • Highlighting the specific code blocks

  • Adding the hidden code

  • Taking input from the user

If one of the provided loaders does not apply to your application, you can set up a custom Docker environment of your choice. Details on Docker with the Code widget can be found here.

Here is a demo program running in a project.

Single Page App (SPA)

The SPA widget is one of the most powerful features on the platform. It allows you to create front-end applications wherever you need them in a lesson. The SPA widget has six default loaders and supports custom docker environments. The widget can also test users with frontend-based exercises.

Here is a demo app running in a project.

RunJS

The RunJS widget can be used to create web pages that support JavaScript. We can write the HTML, CSS, and JavaScript for our page. It is the perfect tool to incorporate client-side development into our projects.

Terminal

The Terminal is a “Ubuntu 20.04.3 LTS” based terminal. Authors can add it to their projects as an integrated terminal by choosing it from the widgets list.

Workspace

You can read about workspace here.

Do read the section on Persistance: Perks and Limit.

Once a project is started, you (and learners) can reset it by clicking the “Reset Project” button from the upper-right corner of the project.

Press + to interact

This button will reset the project, and all the interactions, including the changes in the /usercode directory, will be reverted back to the default state of the project.

For more details, check the links: Jupyter-based Projects, Code-based Projects, and Configuration-based Projects.

We do have some limitations of runtime. Read them here.