As a developer, you’ll need to set up the full system on your own computer. The easiest method is to run the system within a virtual machine (VM). Alternately, you can install the system natively on a dedicated computer and allow outside access (which requires more steps to set up networking, SSL/https, etc.) by following the complete system administrator instructions.
Please contribute by adding bugs or feature requests to our Submitty GitHub Issue Tracker.
A list of Submitty projects (some new, some in progress):
Suggestions for New Developers
Download & install Submitty, and try it out. Read the instructor documentation to learn the system.
Look through our GitHub Issues lists for some ideas of problems to explore.
Technical Note: We can only “assign” GitHub issues to users who are already members of the Submitty GitHub organization. But we are very happy to accept, review, and merge contributions from outside of the organization. Students selected for Google Summer of Code and active developers who already have multiple contributions will be added to the Submitty GitHub organization. Organization members are granted write access to directly push without review to some of repositories – e.g., documentation, etc.
Learn how to use git.
Learn what sections of the code are relevant for those issues (so you’re not overwhelmed).
- Hint: Use “git grep” to search for variables/filenames/specific strings within the source files/directories. This can help you locate relevant files.
Add & delete things to the code, re-install that portion of the system and see what happens. See also Development Instructions.
As you read the code, make a diagram for yourself of how the system fits together.
Use jsfiddle (for testing or demoing new things).
Keep a work diary / log: what did you plan to do today, keep track of how long it took you to do things, difficulties, how did you solve it, helpful reference links, and what’s your plan for tomorrow.
Get familiar with vagrant.
Submit a Pull Request (PR) with your contributions.
Help by Reviewing the Pull Requests of other developers.
Online Community Discussion and Contact Submitty Administration Team
We have a public Slack server for Submitty Developers.
Please use the Slack server
for Submitty installation problems, general development questions, and
feature design discussion. We have a small administration team and
very much appreciate the Submitty community working together to help new
When asking for help on installation, please include your host operating system & version, and your versions of vagrant and virtual box. When asking for help on how to patch bugs or implement new features, please describe what you’ve done to get started, what you’ve figured out, and specifically where you’re stuck.
Special Request: Please do not contact administrator individuals by Slack direct private message or personal email to ask technical questions. It is likely that other developers have the same or similar questions or are experiencing the same bug. So we’d like to answer those questions on the public forum. And you’ll probably get a faster reply when you ask the larger community. Thank you!
System administrators for production Submitty installations with
questions are welcome to contact the core Submitty development team: