Kelvin - The Ultimate Code Examinator
This repository contains code for Kelvin, a web application designed for sharing lesson materials with students, submitting lesson/exam code solutions, performing code review, automatically evaluating submitted code and much more.
An instance of Kelvin used by the Faculty of Electrical Engineering and Computer Science at
VSB-TUO is deployed at https://kelvin.cs.vsb.cz.
If you find any bugs in Kelvin or want to suggest new features and improvements, please file an issue.
You can find documentation of Kelvin's internal workings and how to contribute
in docs.
For local documentation, simply: cd docs && npm ci && npm run start
If you find a security vulnerability in Kelvin, please disclose it to kelvin@vsb.cz. Thank you!
Kelvin is made possible thanks to the contributions of several people. A (non-exhaustive) list of Kelvin contributors can be found below.
- Dan Trnka is the original creator of Kelvin.
- Jan Gaura currently maintains Kelvin.
- Jakub Beránek currently maintains Kelvin.
- Patrik Mintěl rewrote a part of the frontend from Svelte to Vue as a part of his bachelor thesis.
- Erik Hawlasek implemented support for quizzes as a part of his master thesis.
- Dominik Lichnovský currently works on improving Kelvin's deployment and CI/CD as a part of his master thesis.
- Pavel Mikula currently works on adding AI-powered code reviews to Kelvin as a part of his master thesis.
- Šimon Adámek currently works on adding "anti-cheats" and various other improvements to Kelvin as a part of his bachelor thesis.
- Jan Stránský found and reported several security vulnerabilities in Kelvin.
- Roman Táborský implemented support for dark mode and theme switching.
- Jan Dymáček implemented support for task types, relative deadlines and hard dedlines.
- Daniel Krásný implemented storage of IP addresses of submits and made various improvements around the test runner script, the clang-tidy workflow, and various parts of the web frontend.
Various other people also contributed to Kelvin. The full list can be found here.