Programming Projects

The best way to administer programming projects.

See A Demo

Programming projects require a massive amount of time and labor to administer: on average, an instructor will spend 500 hours per course grading projects. We’ve engineered Mimir Classroom to grade student's work in seconds.

Extensive Programming Paradigms Support

We wanted Mimir Classroom to be the one-stop-shop for all your computer science courses so we built out support from low-level languages like COBOL & ARM Assembly to frameworks like Ruby on Rails and databases like Postgres. We are also usually able to add support for new languages within 24 hours.

Quick and Simple Project Setup

With our easy-to-use project creation workflow, you can get your first programming project up and running in minutes. Simply enter in project details, submission settings, perfect code, and testcases, and you’ll be good to go. Once a project is created and active, students will be able to submit their work and see instant results.

Easy and Comprehensive Submission Process

We remember a time when students would try to remote into lab computers and struggle to copy their work over before the deadline. We make it easy for students to work from anywhere and submit work as long as they have internet access. They can submit their code to the project page, Mimir's IDE, our command line tool, or even through Eclipse.

Instant Results and Integrated Review

To date, Mimir Classroom has graded millions of code files across thousands of projects. Our advanced compiler system is able to scale on demand and provide results within seconds of submission. The submission viewing interface makes it extremely easy to browse the history of submissions alongside the grading results. Also included are integrated review tools that allow instructors and students to have a dialog directly about their code.

Automated Grading

I/O Tests

Our I/O test cases make it easy to check a wide range of inputs. Simply enter inputs and Mimir will handle the rest. Along with basic output matching, you can use I/O templating to fuzzy match your student’s output.

Unit Tests

Unit test cases allow you to test units of your student’s source code, including statements, branches, functions, and methods. We utilize well supported frameworks including JUnit, Google Test, unittest, and RSpec to ensure the best experience for you and your students.

Code Quality Tests

Code quality test cases help students adhere to certain coding standards and cleanliness. We use a variety of linters and other code quality analysis tools for each language to generate a quality score for your student's code.

Custom Tests

Custom test cases can be used to accomplish almost anything that you can't do with the other test case types. Inside of these test cases, we allow you to upload more files in a zip and write a script in BASH that can be used to control whether a test fails or succeeds.

Manual Grading

We understand that not everything can be graded automatically. That’s why we’ve built out an extensive manual grading workflow for use by instructors and TAs.

Ready to get started?
Get in touch, we'd love to talk.