Google Summer of Code 2007 Ideas
Revision as of 13:49, 25 March 2007 by Pombredanne.nexb.com (Removed the mentor candidate line, which is confusing)
- Be creative
- Be specific: what do you want to be implemented
- If you are willing to mentors those ideas, add you name and email under the idea:
- Framework to develop simple Eclipse plugin using PHP. Create a framework that could support developing simple Eclipse plugin using a PHP To Java bridge (Like Caucho's Quercus and other JSR 223 emgines). Develop and document a sample plugin in PHP, so that PHP developers could create simple plugins.
- Add the ability to write plugins using jruby or groovy. First research and determine if this would make plugin writing noticeably easier. I think it would just because no compile is needed; you can change code on the fly Emacs Lisp style.
- Java Executable Wrapper Plugin for Eclipse. Develop a plugin for Eclipse to wrap compiled Java applications and give out a excutable file for launching. It is supposed to support both Windows and Unix-like Systems.
- Develop an eRCP based gadgets(as in google gadgets) or widgets (as in apple's dashboard widgets) infrastructure for mobile phones.
- Write a EPL'd protocol implementation for ECF. For example, ECF currently has an EPL'd MSN implementation and needs others.
- Develop GTK support for the eRCP project
- Develop a newsreader similar to Pan,Thunderbird but based on Eclipse
- Provide an Eclipse IDE generation environment derived from a language grammar (Eclipse IDE generator)
- Full-blown WebDAV client + corresponding Eclipse File System implementation
- Full-blown FTP client with sftp support + corresponding Eclipse File System implementation
- Ability to open a file in eclipse from the command line (see #4922)
- Add full refactoring support to CDT.
- Add call graph navigation to CDT. When cursor is in a function, allow user to jump to any function that calls this function, or any function that it calls. (within reason) bug 152847
- Consolidate all the color pickers into a single, well thought out color manager with the ability to save and share color themes. Think inheritance (the PHP editor inherits the HTML and Java editor colors by default, plus adds a few of its own). Extra points for adding custom backgrounds or transparency. Eclipse needs to be made a whole lot prettier.
- Add online documentation to CDT. Make it so I never need to shell out to read a manpage. I just type the first few letters of the function and it autocompletes and allows me to hit F2 (or whatever) to view full documentation.
- Add a focus-follows-mouse mode for those of us who don't like having to click all the time (a view is selected the moment the mouse enters it). Also maybe add a keypress to switch between editors when they are tiled.
- Support seamless debugging between JDT and CDT (Java <> JNI <> C). details
- Support for user-defined refactorings in JDT #144642
- More work on mercurial support 
- More work on git support 
- Joomla support for Eclipse, as a set of specific extension to PHPEclipse that are aware of Joomla framework specifics, and libraries.
- Drupal provider for ECF that implements the Bulletin Board API.
- Write an Eclipse plugin to integrate with the Online Marking Tool (OLM), so that students can view the detailed comments that graders have made about their code.
- A standalone Bugzilla client (RCP app, perhaps) using Mylar
- Fix the most popular bugs and feature requests: provide patches or fixes for any open bugzilla with at least 20 votes .
- Eclipse IDE generator: building on some previous research work (Chris Laffra), provide an Eclipse IDE generation environment derived from a language grammar. This project would allow the creation of basic support of new or existing languages in Eclipse rapidly.
- Eclipse Mono Development Environment: a feature rich .Net development platform for Eclipse. The Java development tool may provide a great starting point. As this may be a big project, providing a project that accomplishes some significant contributions towards that goal is fine.
- New Eclipse update manager: Eclipse current update manager is four years old and ridden with significant problems. This project would provide with a modern and original design for an automated software update for plugins and natives, if possible generic for OSGi based runtimes and could provide original inputs for a revamp of update in 3.3 to the platform team.
- NetBeans in Eclipse: netclipse: the plugins models for Eclipse and NetBeans are very similar yet different. This project would provide the ability to run and embed a minimal NetBeans environment within Eclipse -- as Eclipse plugins-- , and support running NetBeans plugins like Matisse (Swing UI painter) or Coyote (dynamic languages toolkit).
- Eclipse search plugin: provide an enhanced Eclipse search: better, faster, more relevant. Think Lucene or opengrok inside Eclipse.
- Eclipse RCP installer wizards: create Eclipse wizards to generate native graphical installers and packages for the major platforms: Windows , MacOSX, and Linux is, deb, emerge, rpms for an Eclipse Rich Client Platform application, extending the work started at last year SoC
- Eclipse Open Office Integration: provide OpenOffice as a set of minimal Eclipse plugins for each platforms integrated in Eclipse and packaged for RCP deployment
- Eclipse install based manager: provide application and support for managing a large deployment of Eclipse based RCP clients, including pushed updates and client configurations.
- Mylar Wiki integration, enabling context and embedded authoring for Wiki pages and tasks.
- Mylar and ECF integration, enabling task contexts to be shared synchronously between developers. Possibly using XMPP and Google Talk messaging service
- Voice-over-IP client implemented as RCP app using ECF call API and Google Talk call setup protocol (Jingle)
- RCP real-time collaboration based upon ECF and Google Talk XMPP-based messaging service
- Implementation of System-Tray API for Mac, allowing to control the Dock (See Bug 56116)
- An Eclipse plugin for discovering run-time components that other plugins may need. For instance on MacOS, all the installed Java runtimes are automatically added to the list of installed Java runtimes. Having a similar feature to flexibly discover Java runtimes on Windows and Linux would be very helpful, looking for well-known installations locations, marker files, registries, or using file system scans. It could be even more generic and provide extensions points to contribute discovered runtimes in other areas: a Ruby, PHP, Python, Perl or C++ language runtime for the available open source plugins, or the discovery of installed servers or database runtimes for MySQl, Apache, Tomcat and so on. Third party plugins could subscribe to those services and provide auto-configuration of their own preferences. An example implementation could be to provide embedded PHP runtimes for PHPEclipse and PHPDT or an embedded MinGW for CDT.
- For Mylar ideas see the the Mylar Contribution Ideas page.
More ideas can be found here.
- Benjamin Muskalla, BA Karlsruhe, Germany, project info is comming soon
- Joe Simms, Mount Allison University, Canada, FTP Explorer: A simple alternative to centralized code storage.
- James Williams, Nova Southeastern University USA, project info is coming soon
- Stefan Bucur, University Politehnica of Bucharest, Romania, project info is coming soon
- Mariot Chauvin, TELECOM Lille 1, France, Support seamless debugging between JDT and CDT (Java <> JNI <> C)
- Taivo Evard, University of British Columbia, Canada, project info is coming soon
- Tharaka Roshan, University of Moratuwa, Sri Lanka, project info is coming soon
- Zhang Rui, Graduate University of the Chinese Academy of Sciences, China, Java Executable Wrapper Plugin for Eclipse