Skip to content

Code grading made intuitive. CodeGrade is a blended learning application designed especially for programming education, making reviewing and handing in programming exercises more insightful and effective for students and more efficient for teachers.

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
COPYING

marksherman/CodeGra.de

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CodeGra.de

Build Status Coverage Status Coverage Status Source Lines of Code 10.0 Python updates Python 3.7+ ready Made with ❤ & ️🍻 Website: CodeGra.de Latest git tag Latest release Semantic Version: ✓ Open GitHub Issues Closed GitHub Issues Open GitHub Pull Requests Closed GitHub Pull Requests Repository size License AGPL-3.0-only

CodeGrade

CodeGrade is a blended learning application designed especially for programming education. It makes grading and handing in programming exercises more insightful and effective for students and more efficient for teachers. Where programming exercises are currently reviewed in a classical and counter-intuitive way, resulting in only little and vague feedback, CodeGrade creates the missing intuitive environment for reviewing programming exercises.

This is achieved using some of the key-features CodeGrade provides:

  • Line by line feedback making it possible to specifically write feedback for a specific part of the code.
  • Rubrics per assignment to aid with grading.
  • Built-in code plagiarism detection system using JPlag.
  • CodeGrade Filesystem enabling both students and teachers to access and hand in files on the CodeGrade system locally without any overhead.
  • CodeGrade editor plugins allowing the teacher to locally review programming assignments and fill in rubrics using the editor of choice.

Getting Started

A local installation of CodeGrade can be created using the running instructions in the CodeGrade documentation. CodeGrade can be run in both development mode and production mode, both are explained in the documentation.

CodeGrade filesystem

The CodeGrade filesystem (or CodeGra.fs) can be used to mount a local CodeGrade instance on your computer to browse the assignments and files on the server. The filesystem can be used for students to locally work on the CodeGrade mount and thus automatically hand in the assignment with each save. For teachers the filesystem can be used to grade work without any overhead locally using a preferred supported editor.

More information on installing and using the CodeGrade filesystem can be found on https://github.com/CodeGra-de/CodeGra.fs.

CodeGrade editor plugins

Accompanying the CodeGrade filesystem are editor plugins. These plugins allow for easy and intuitive grading of work locally in your favourite editor. By using the combination of the filesystem and an editor plugin, overhead during grading can be reduced to a bare minimum and all focus can be on the actual grading of the work.

As of writing, there are editor plugins for the following editors:

Technologies used

  • Vue.js - A front-end JavaScript UI framework used to create CodeGrade's front-end.
  • Flask - A python back-end WSGI framework used to create CodeGrade's back-end.
  • PostgreSQL - The database used for CodeGrade.
  • Celery - Celery is used to provide a non blocking background queue.

Contributing

By contributing to this product you agree that all code you write will be released under the AGPL license, version 3 (AGPL-3.0-only). See LICENSE for details.

Please consult CONTRIBUTING.md for further details on contributing to CodeGrade.

Authors

CodeGrade is currently maintained and actively developed by Devin Hillenius (@DevinHillenius), Olmo Kramer (@olmokramer), Thomas Schaper (@libre-man) and Youri Voet (@yourivoet).

Please feel free to contact us at info@codegra.de for more information on innovating your programming education by using CodeGrade at your institute.

History

CodeGrade originated as project, called CodeGra.de, in the Project Software Engineering course at the University of Amsterdam in June 2017. The project emerged from our own frustrations as both students and teaching assistants in computer science at the UvA. As students we lacked meaningful feedback to give us insight in our grade for programming assignments. And as teaching assistants the amount of overhead required to actually grade programming assignments in the traditional way, in addition to the lack of providing useful feedback in a counter-intuitive environment made the work very frustrating at times. This still drives us to create a product that can revolutionise programming education to this date.

Acknowledgements

The initial version of CodeGrade was created for a course at the University of Amsterdam and was developed by Leon Bartelsman, Ewoud Bouman, Harm van Eekeren, Wicher Heldring, Devin Hillenius, Niek Kabel, Erik Kooistra, Olmo Kramer, Sebastian Melzer, Thomas Schaper, Bram Snijders and Youri Voet.

Furthermore, we want to thank the University of Amsterdam for their support of this project during its first year of development.

Full Documentation

The full documentation of CodeGrade can be found on our website: https://docs.codegra.de/.

License

CodeGrade as a whole is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0-only). For more information about copying see COPYING. All license identifiers used in this product are SPDX license identifiers.

About

Code grading made intuitive. CodeGrade is a blended learning application designed especially for programming education, making reviewing and handing in programming exercises more insightful and effective for students and more efficient for teachers.

Resources

License

Unknown, Unknown licenses found

Licenses found

Unknown
LICENSE
Unknown
COPYING

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 60.0%
  • Vue 29.5%
  • JavaScript 9.4%
  • CSS 0.8%
  • Shell 0.1%
  • Makefile 0.1%
  • Other 0.1%