Fermion allows you to add IO coding labs. IO coding labs are powerful labs that can run the following languages:
Before you start, make sure Coding labs are enabled under Manage Features in your instructor dashboard. Learn how to enable features at Fermion here
C / C++
Java
Python
Node.js (JavaScript)
SQLite / MySQL 8
Go (1.19)
Rust (1.87)
.NET 8
Reach out to Fermion support if you need access to more runtimes than listed
here.
How to access and create IO labs
1
Head over to the Coding Labs section
To access IO Coding Labs, go to your Instructor Dashboard and open the Coding Labs section from the sidebar. Click on Labs and then navigate to the IO Coding Labs tab.


2
Create a new lab
Give your lab a suitable name and click Create Lab.
Next, add a title and description for your lab. You can also use Fermion Copilot to help build your lab.
The description field supports Markdown, allowing you to format content and add details freely.
Next, add a title and description for your lab. You can also use Fermion Copilot to help build your lab.
The description field supports Markdown, allowing you to format content and add details freely.

3
Add test cases
After creating the lab, move on to adding test cases.
You can include sample test cases as well, which will be visible to the users attempting the lab.
You can include sample test cases as well, which will be visible to the users attempting the lab.

4
Select supported languages
Choose the programming language(s) you want your learners to use in the lab. To configure the default code template for any language, click on the arrow next to the language name.
Learn how to create SQL labs
Learn how to create SQL labs

5
Set matcher type
Under Matcher Type, decide how the system should compare user output with the expected output:
Matcher type
Matcher type
Define how the expected output and user’s output should be compared:
- Exact match: Character-by-character comparison
- Ignore whitespace at start and end
- Ignore case sensitivity and whitespace at start and end
- Ignore whitespace in every line at start and end
- Ignore case sensitivity and whitespace in every line at start and end
6
Configure advanced settings
Under Advanced Settings, you can fine-tune your lab’s execution limits.
These defaults are usually optimal:
These defaults are usually optimal:
- Maximum CPU time (ms): 2000
- Maximum wall time (ms): 5000
- Maximum memory (KB): 512000

7
Save your lab
Once all configurations are complete, click Save Changes.
Your IO Coding Lab is now successfully added and ready for learners!
Your IO Coding Lab is now successfully added and ready for learners!
