SETU Code Lab

Simplifiying code education

Try it out now!

Project Overview

Application Description

SETU Code Lab is an in-browser study tool for students enrolled in computing-related courses at SETU and a learning management platform for their lecturers. Lecturers can create problems and courses and add students to these courses. This allows lecturers to easily assign work to groups of students and gather submissions all in one place.


When a lecturer creates a problem, they define several test cases. Student solutions are run using inputs from these test cases and automatically graded for the lecturer. The lecturer can then view all their student's submissions and even download class results in .CSV format for their convenience.


The platform is intended to be used by lecturers to help teach students how to code. It is also intended for students to practice coding concepts for upcoming exams or coding interviews. It also uses several gamification mechanics such as streaks, points leaderboards and badges to keep students engaged.


SETU Code Lab was built using React, TypeScript, SCSS, Node.js, Express.js, PostgreSQL and Docker. The most technically challenging aspect of this project was using Docker to safely and securely execute student submitted code.

Documentation

Demo Video

About Me

Diarmuid O'Neill

Final year Software Development student at South East Technological University, Carlow, with a strong interest in secure application development and machine learning.

This project was inspired by my own experience learning to code and submitting assignments. I wanted to build a platform that makes coding more fun for students, while simplifying the entire workflow for lecturers, from assigning problems to reviewing student results. This platform was designed and built by me under the supervision of Dr. Joseph Kehoe.