codebender is an open-source online IDE for Arduino developers, makers and engineers that incorporates many advanced development tools existing in other sectors of software development and brings them to the Arduino. Apart from that, being online makes it a powerful collaboration platform, where users can share code, clone other users’ projects, and collaborate in teams.
The objective of this assignment is to get the students acquainted with a real-world open source project and with established coding practices. codebender is comprised of a 4-5 independent subsystems, which communicate with each other via REST calls, so the students can also learn about architecture design, and get a clear idea of a clear, web-based system architecture. The end objective is to fix known bugs in the codebase, and after getting acquainted with the code, to start implementing new features such as collaboration, code completion in the IDE, premium features for users, or porting codebender to other pla