Difference between revisions of "Portable DXR"
Samer.ziadeh (talk | contribs) (→TODO) |
Samer.ziadeh (talk | contribs) |
||
Line 95: | Line 95: | ||
[irc://irc.mozilla.org/PDXR #PDXR] | [irc://irc.mozilla.org/PDXR #PDXR] | ||
− | =TODO= | + | ==TODO== |
* Need to get a perl (and python?) interpreter into the extension or into an installer so it lives locally as well. | * Need to get a perl (and python?) interpreter into the extension or into an installer so it lives locally as well. |
Revision as of 19:29, 30 October 2008
Name of Project
Portable Dehydra Cross Referene (PDXR)
Description
This project aims to turn the DXR into an extension that can be installed in Firefox or distributed as a XUL/Prism application. This will allow developers with limited or no internet connection to access it offline. The extension will also provide a low-bandwidth solution for pushing updates to the end-user. The DXR is a compilation of Mozilla developer documentation. The plan is for this material to be distributed on a Fedora Live DVD that will allow the user to access these materials offline or, alternatively, install them for use on a Windows machine. Currently the Local MXR and MDRK exist as web applications that run only on Fedora and require the installation of MySQL, Perl and apache. These projects have to be setup manually and are not installable. Our part in this project would be to convert these projects so that they can be installed cross-platform as a Mozilla Firefox extension.
Leaders
Details
Technical Overview
Business Rules
- Must not sell project for profit
- Commit to lowest file size bandwidth
Source
- Backend: Perl
- Database: SQLite
- Interface: XUL
Features
- Running server side Mozilla code on the local machine. The extension will have an embedded server that will handle the server-side scripting.
- Notify the user that their database may be out-of-date 30 days after last update.
- Option to allow compression of data download.
Users
- Developers with limited or slow internet connection
Architecture
The architecture is still undergoing development and this section will be updated regularly.
Mozilla-Central
The main Mozilla source code that the update server contacts to check for updates
Update Server
Contacts the Mozilla-Central to obtain the updates and injects them into a database that can be used by the extension.
Application
Web Browser
The application front-end holder. It provides a way for the application to be accessed. It is not limited to Firefox web browser only, it can also be run as a Prism application.
Extention
The front-end application. It's CGI tools are responsible for communicating with the core application and fetching the data to the application. The application then parses the data and populates the UI as neccessary.
DXR
The core application has the following functionalities:
- Database querying
- Update services
- Data transaction
Related Projects
- Mozilla Developer Resource Kit: This is the over-arching project of which the PDXR is but one piece.
- Creating an MDRK spin: This is how this project will eventually be distributed.
- Create a local mxr: It is hoped that by solving the more difficult problem of packaging the dxr, the problem of packaging other materials such as an mxr or developer documentation will also be solved.
News & Updates
Meetings (Chronological)
Sept 26, 2008: Discussion with David Humphrey about project scope.
Oct 2, 2008: Discussion with David Humphrey about technical details of DXR.
Oct 8, 2008: Team meeting to discuss Work Breakdown Structure (WBS)
Oct 16, 2008: Team meeting to discuss technical details of project
Oct 29, 2008: Further discussions with David Humphrey about documenting the project.
Oct 30, 2008: Group meeting to map out high level design.
Team Blogs
James Boston: All relevant posts are tagged 'pdxr'.
IRC
TODO
- Need to get a perl (and python?) interpreter into the extension or into an installer so it lives locally as well.
- Someone has to figure out how to mash a web server into an extension.
There is research to be done there on all the options, compare them (which platform, license, complexity, etc.).
- Have to figure out how to a) get updates from David's dxr or mozilla-central; b) push updates to the extension.