We are about to switch to a new forum software. Until then we have removed the registration on this forum.
My name is Joel Ruben Antony Moniz, and I'm a second year student pursuing my B.E. (Hons) Computer Science at BITS Pilani, Pilani campus in India.
I have been using Processing for almost a year now. I have also been contributing to the project form around 2months now, and have submitted 2 pull requests to Processing (adding an AutoSave feature and adding a Progress Bar when Saving As), and am eagerly awaiting the community's opinion as to how those features are, how they can be improved, whether they violate any of the Processing project's coding styles, etc.
I'd love to take my participation in Processing to the next level by participating in GSoC 2014. In particular, I checked out the list of potential tools and the GitHub Integration idea caught my fancy. I have been using Github for a few months now, and this is a tool that I could really relate to. I did a project using Processing last summer, where I built an entire game from scratch. I have created a GitHub repo for it. When making the project, I kept Saving As at each stage, and changing the project name. I eventually ended up with around 8 copies of the same project! On looking back, I realize how much simpler and neater a version control like Git would have been. Further, if I ever plan to take the project to this next level, and make it a full blown game (along with a few friends, say), GitHub would provide me with everything I'd ever need to manage this operation effortlessly. This is what inspired me to come up with an idea for the implementation of a GitHub management tool in Processing.
To implement this, I'm thinking of using the JGit and the egit.github libraries. As a proof-of-concept, I have implemented a very basic tool for Processing which initializes a sketch folder as a git repo (the proof-of-concept can be found on GitHub here). This is only a very basic prototype, however, simply to test if my installation and use of the various libraries was correct and if the tool so created builds successfully and is able to utilize the editor object passed to it (in this case, I have used the editor object to access the current absolute path of the folder the sketch is stored in). Could someone please tell me if this is the correct method to proceed (especially with regard to the libraries used)?
Further, not having much experience in working on a project of this magnitude (in terms of time, and number of people it would, hopefully, affect), can someone please tell me if this idea is large enough (and sufficiently useful) for a GSoC project, or if it is too small?
In case it is too small, and if it is acceptable, could I implement a 2D Sketch tool for Processing as well? The tool will be something very roughly along the lines of the G4P Tool, but instead providing numerous 2D drawing features (for example, to draw rectangle, ellipses, triangles, polygons, et. al. and implement properties like stroke color and weight, fill color, etc.).
Looking forward to the community's feedback!!! :)
EDIT: As per Mr. Phil's feedback, I will be integrating other online repo services into the tool as well. Hence, I have renamed the tool from "GitHub Manager" to "Git Manager". A minor technicality, but still :).