Community:SummerOfCode14:Brainstorming: Difference between revisions
(→Instantbird: Changed mentor for WebRTC proposal.) |
|||
Line 44: | Line 44: | ||
! Mentor(s) | ! Mentor(s) | ||
! Comments | ! Comments | ||
|- | |||
| Convert in-content XUL pages to HTML | |||
| Some of Firefox's in-content pages like about:newtab, about:memory, etc. use XUL. If we used HTML instead, it'd be easier for people to hack on them, they'd benefit from performance/bugfix improvements to the web, and so on. It would be nice to convert some of these pages away from XUL. | |||
| Good knowledge of HTML, CSS and JS. Knowledge of XUL and/or possibly the new shadow DOM specs will likely come in handy. | |||
| Gijs | |||
| Gijs | |||
| | |||
|- | |||
| Firefox front-end contribution add-on | |||
| Build an add-on that works on Nightly and lets people write patches against the files in their Nightly, and easily put those up in bugzilla (in a format that can be grokked by hg qimport). Note that this should use (or rewrite/emscripten-recompile) the python preprocessor into JS and automatically download the required source files for files which are preprocessed. | |||
| Good knowledge of web tech like HTML, CSS, JS. Some knowledge of Firefox internals (like having written a XUL-based add-on before). | |||
| Gijs | |||
| Gijs | |||
| | |||
|- | |- | ||
|} | |} |
Revision as of 17:31, 6 February 2014
Mozilla community members - submit proposals here for 2014 Google Summer of Code projects with Mozilla. (If this page looks empty, it's because accepted ideas have already been transferred to the official list.) The absolute last deadline for submitting ideas in time to help us get accepted by Google is February 14th.
Are you a students looking to apply to SoC with Mozilla? Your first stop should be the official list of ideas. This page is full of weird and whacky ideas, some of which are still on here for a reason - it could be that they are not properly defined, the wrong size, or don't have a mentor. That makes them less likely to get accepted. You can, of course, also submit your own ideas - you don't have to put an idea on this page and get it 'made official' in order to send in a proposal for it.
How To Write A Good Project Proposal
Before adding an proposal to this list, please consider the following:
- Be specific. It's hard to understand the impact of, or the size of, vague proposals.
- Consider size. The student has eight weeks to design, code, test and document the proposal. It needs to fill, but not overfill, that time.
- Do your research. Support the idea with well-researched links.
- Don't morph other people's ideas. If you have a related idea, place it next to the existing one, or add a comment.
- Insert only your own name into the Mentor column, and then only if you are willing to take on the responsibility. If you think the SoC admins won't know who you are, leave contact details.
- Check back regularly. The administrators may have questions about your idea that you will need to answer.
- Know when to give up. If you've added the same idea for the last three years and it hasn't made it to the official page, perhaps you can predict what will happen this time.
Suggestion List
Here are the ideas lists from previous years.
Proposals can be in almost any part of the Mozilla project - don't be fooled by the "Code" in "Summer of Code". If there is no category below for your part of Mozilla, add one!
Mozilla Platform (Gecko)
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Firefox
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|---|---|---|---|---|
Convert in-content XUL pages to HTML | Some of Firefox's in-content pages like about:newtab, about:memory, etc. use XUL. If we used HTML instead, it'd be easier for people to hack on them, they'd benefit from performance/bugfix improvements to the web, and so on. It would be nice to convert some of these pages away from XUL. | Good knowledge of HTML, CSS and JS. Knowledge of XUL and/or possibly the new shadow DOM specs will likely come in handy. | Gijs | Gijs | |
Firefox front-end contribution add-on | Build an add-on that works on Nightly and lets people write patches against the files in their Nightly, and easily put those up in bugzilla (in a format that can be grokked by hg qimport). Note that this should use (or rewrite/emscripten-recompile) the python preprocessor into JS and automatically download the required source files for files which are preprocessed. | Good knowledge of web tech like HTML, CSS, JS. Some knowledge of Firefox internals (like having written a XUL-based add-on before). | Gijs | Gijs |
Firefox for Android
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Firefox OS / Boot2Gecko
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Mozilla Open Badges
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Thunderbird
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
SeaMonkey
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
NSS (Network Security Services)
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Bugzilla
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Firefox Support (SUMO)
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
QA
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Automation & Tools
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Documentation
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Mozilla Developer Network
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Mozilla IT and Infrastructure
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Persona / BrowserID
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Sync / Services
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Developer Tools
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Add-on SDK
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Foundation
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Release Engineering
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Instantbird
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|---|---|---|---|---|
WebRTC support | Goal: Support voice/video chat using WebRTC via XMPP (and potentially other protocols).
Add voice and video chat to Instantbird via WebRTC. This will involve adding APIs to allow protocols to prepare a voice/video connection to a contact and some basic user interface to show the video feed. |
JavaScript, XPCOM, XUL | Florian Quèze | Benedikt Pfeifer | XEP-0320, XEP-0338, XEP-0339, XEP-0343 for XMPP |
Single window UI: | Goal: Provide an alternative UI that works well in a single window.
To design and implement a single-window UI that does not require a separate contact list and makes good use of the available space when the window is full-screen. Avenues to explore are e.g. multiple side-by-side chats (extending what is currently possible with tabs), and automatic resizing of conversations. The student should bring a good (if not complete) vision for this project, demonstrated via mockups in the application. |
JavaScript, XPCOM, XUL | Florian Quèze | ||
FileLinks in IMs / File transfer | Goal: File transfers that work reliably for every protocol.
The Thunderbird Filelink feature allows users to upload attachments to an online storage service, replacing the email attachment with a link. This existing code could be used to implement file transfer. While some protocols support file transfer directly, this approach would provide a fallback that should always work. Designing and implementing a good UI frontend would also be required. |
JavaScript, XPCOM, XUL | Florian Quèze | aleth | The frontend should be flexible enough to be able to handle other file transfer methods when they are implemented, e.g. WebRTC for XMPP or DCC for IRC. |
Improve JS-XMPP | Goal: Ease working with the JavaScript XMPP implementation and implement new features.
Include better syntax for XML handling, implementing handling of MUCs and other features. Feature-parity with libpurple's XMPP support is one of the prerequisites for replacing the libpurple XMPP plug-in that is currently used. One possible improvement would be to support voice and video calls between a JS-XMPP client and a Jingle client using WebRTC. |
JavaScript, XPCOM | Florian Quèze | Patrick Cloke | |
Additional JavaScript protocol plug-ins | Goal: Implement new protocol plug-ins in JavaScript, or create more stable implementations of existing ones.
Instantbird supports protocol plugins implemented in JavaScript. The student will either add support for new protocols in Instantbird (if so, explain why this protocol matters) or reimplement in JavaScript an existing protocol that is poorly supported by libpurple (if so, explain what will be better supported in the new implementation, or why the current implementation is not adequate). The student working on new protocols should take every opportunity to improve the code and APIs shared by all JS protocol plugins. |
JavaScript, XPCOM, maybe js-ctypes | Patrick Cloke | Patrick Cloke | IRC, XMPP, Twitter and Yahoo have already been implemented in JavaScript and should not be considered; Some base code exists for OSCAR (AIM/ICQ); SIP, Bonjour and OSCAR are probably the most wanted protocols. |
Off-The-Record messaging integration | Goal: Integrate OTR in an easy to use fashion.
OTR is an often requested feature, but must be integrated in such a way to require little user interaction. Furthermore, the student could try to make Instantbird compliant with the secure messaging checklist suggested by Saint-Andre (link?) |
JavaScript, XUL, XPCOM, maybe js-ctypes or C++ | Patrick Cloke | Patrick Cloke |
Emscripten
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Rust
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|---|---|---|---|---|
Package Rust in key distributions | Having {apt-get,yum} install rust | deb packaging / Rust (LLVM appreciated) | Sylvestre Ledru & Luca Bruno | Main issues: https://wiki.debian.org/Teams/RustPackaging/Bootstrap & https://github.com/mozilla/rust/issues/4259. Will focus on Debian/Ubuntu first |
Security Engineering
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|
Open(Art)
Title | Details | Skills Needed | Reporter | Mentor(s) | Comments |
---|