Line 33: |
Line 33: |
| # Design and implement a browser engine abstraction layer in Python with two backends: hulahop/xulrunner and pywebkitgtk/webkit. | | # Design and implement a browser engine abstraction layer in Python with two backends: hulahop/xulrunner and pywebkitgtk/webkit. |
| # Port Browse to this new abstraction layer, complete with [[Webified|SSB support]]. | | # Port Browse to this new abstraction layer, complete with [[Webified|SSB support]]. |
| + | |
| + | Since recent efforts to empower browsers like HTML5, Jetpack and the Chrome extension API are minimalistic in nature, the web development world is moving towards engine-independent extensions. Thus, implementing Jetpack/Chrome extensions/similar homegrown API for Browse should be both feasible and would benefit from a wealth of existing code. |
| + | |
| + | SSBs are becoming less "web app to replace desktop apps" and more "internet apps to fit better in the desktop". I will design Browse's new SSB support to match this trend. |
| | | |
| * '''What is the timeline for development of your project? The Summer of Code work period is 7 weeks long, May 23 - August 10; tell us what you will be working on each week. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.) Note that you should probably plan to have something "working and 90% done" by the midterm evaluation (July 6-13); the last steps always take longer than you think, and we will consider cancelling projects which are not mostly working by then.''' | | * '''What is the timeline for development of your project? The Summer of Code work period is 7 weeks long, May 23 - August 10; tell us what you will be working on each week. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.) Note that you should probably plan to have something "working and 90% done" by the midterm evaluation (July 6-13); the last steps always take longer than you think, and we will consider cancelling projects which are not mostly working by then.''' |
| Weeks: | | Weeks: |
| # Write prototype of abstraction layer | | # Write prototype of abstraction layer |
− | ## WebView GTK widget that wraps hulahop.WebView or pywebkitgtk.WebView | + | #* WebView GTK widget that wraps hulahop.WebView or pywebkitgtk.WebView |
− | ## nothing more than WebView.load_uri() | + | #* nothing more than WebView.load_uri() |
| # Simple Browser activity based on the abstraction layer | | # Simple Browser activity based on the abstraction layer |
− | ## recycle code from Browse & Surf | + | #* recycle code from Browse & Surf |
− | ## implement missing functionality as needed | + | #* implement missing functionality as needed |
| # Basic browser functionality | | # Basic browser functionality |
− | ## DOM access | + | #* DOM access |
− | ## html events mapped to gobject events | + | #* html events mapped to gobject events |
| # More browser functionality | | # More browser functionality |
− | ## downloads, history | + | #* downloads, history |
− | ## user stylesheets | + | #* user stylesheets |
− | ## browser settings (i.e. proxy) | + | #* browser settings (i.e. proxy) |
| # Port SSB code from Browse's ssb branch | | # Port SSB code from Browse's ssb branch |
− | ## create ssb | + | #* create ssb |
− | ## edit userstyles/usersheets | + | #* edit userstyles/usersheets |
− | ## bookmarklets | + | #* bookmarklets |
| # More functionality | | # More functionality |
| # Polish | | # Polish |
Line 68: |
Line 72: |
| | | |
| Since I was using a lot of open source at home, I tried to push it in school as well. I managed to make students and teachers aware of GCC as a replacement for Borland C/C++, Mono and SharpDevelop as a replacement for the not-quite-free Visual Studio. With the help of a friend, I even managed to convince the head of school to install Ubuntu in one of the labs. | | Since I was using a lot of open source at home, I tried to push it in school as well. I managed to make students and teachers aware of GCC as a replacement for Borland C/C++, Mono and SharpDevelop as a replacement for the not-quite-free Visual Studio. With the help of a friend, I even managed to convince the head of school to install Ubuntu in one of the labs. |
− |
| |
− | I've also participated in last year's GSoC, adding SSB support to Browse. See [Webified].
| |
| | | |
| ====You and the community==== | | ====You and the community==== |