Inspiration

A lot of work from professors, TAs, and students alike goes in to making programming assignments work in CS courses. Our project aims to streamline this procedure by providing a platform for users to check their code against others' interfaces. Our campus community, and campuses elsewhere, will benefit from the transparency and utility Crowd Code provides.

What it does

Crowd Code is a collaborative integration testing framework for the education community. Instructors and students can use Crowd Code to make the process of programming more transparent and interactive. Students, after signing through Google OAuth, are able to create projects that associate to projects within these classes. Students can then add their own black box test cases to these projects by uploading the input and the expected output file. In this way, Crowd Code is able to build a community-sourced base of test-cases to test upon.

How we built it

React primary dependencies:

Challenges we ran into

Integration between the frontend, runner script, and backend was extremely challenging, as there had to be multiple avenues of communication between all three systems.

Accomplishments that we're proud of

Writing a lot of comprehensive backend code that supported the different methods of data communication.

What's next for Crowd Code

Crowd code has plenty of opportunity to scale. Some ideas we've thought that would bring positive impact include:

  • Rating test cases to filter out the best/ideal test cases
  • Compiling on server side instead of locally
  • Ability to create users with different permissions, save histories
Share this project:

Updates