|
|
(301 intermediate revisions by 44 users not shown) |
Line 1: |
Line 1: |
| We often get asked to suggest Moodle development projects suitable for students to attempt. Here is a list of such projects that no-one is currently working on. You should contact [[Martin Dougiamas]] before starting on any of these, just in case this page is out of date.
| | {{Moved_to_dev_docs}} |
| | |
| All of these projects are also suitable for the [http://code.google.com/soc/ Google Summer of Code 2006], a Google project that Moodle is part of. When applying for any of these projects, please include as much evidence as possible of your previous coding experience, and also include a description of how you plan to tackle the project (beyond our description below).
| |
| | |
| == Projects that no-one is working on yet ==
| |
| | |
| === Global search ===
| |
| | |
| Design a modular solution for global search in Moodle. Some of the main criteria are:
| |
| # it should be fast and accurate
| |
| # it should allow modules to expose their data structures to the core search via the usual API (function in lib.php) allowing any module to include itself in the search
| |
| # it should allow the kinds of search parameters that the forum search does now (or better!)
| |
| # people should not be able to search things they couldn't normally see
| |
| # it should utilise the new tags system as much as possible
| |
| # (extra points) it should be able to rank results by relevance and combine results in different modules
| |
| | |
| Mentor: Martin Dougiamas
| |
| | |
| | |
| === Presets for Database module ===
| |
| | |
| Implement presets for the Database module using files similar to [http://cvs.sourceforge.net/viewcvs.py/moodle/moodle/mod/data/preset/imagegallery/ this example].
| |
| # Each directory of files will fully define the templates and fields for a particular application of the Database module.
| |
| # It should be easy to export current settings as a preset (in a zip file), or load new presets (uploaded as a zip file or from the [[moodledata]] folder)
| |
| # A "glossary" preset should replicate the old Glossary module as much as possible (this may require some extensions to the core Database module)
| |
| # The "Image gallery" preset should implement a really nice photo gallery application.
| |
| # (extra points) devise a way to publish these directly to another site (for example a database on moodle.org)
| |
| | |
| Mentor: Martin Dougiamas
| |
| | |
| | |
| === Integrated Bug Tracker ===
| |
| | |
| Improve our [http://moodle.org/bugs current bug tracker] which is a hacked version of [http://phpbt.sourceforge.net/ PHP Bug tracker], or extend the Database module, or completely write a new "tracker" module from scratch to integrate it inside Moodle as an activity module, using normal Moodle authentication, text filters, and so on.
| |
| | |
| # All the current bugs (with comments) should be migrated across to this new version.
| |
| # It should allow us to add flags/fields similar to those in the current tracker.
| |
| # Email subscription to individual bugs should work similar to Moodle forums.
| |
| # Bugs should be able to be referenced using a simple URL like http://moodle.org/mod/tracker/view.php?issue=3455
| |
| # Most importantly, the new module should be made generic, so that other sites beside moodle.org can use it to track whatever issues they wish.
| |
| | |
| Mentor: Martin Dougiamas
| |
| | |
| | |
| === AJAX Course Format ===
| |
| | |
| Design a clean, extensible method for implementing a course format using AJAX. This may require development of a web service to service the Javascript front end.
| |
| # It should be optional and accessible, so that it can drop back to the current interface on browsers that are incapable of dealing with dynamic pages.
| |
| # Blocks can be dragged and dropped.
| |
| # Sections can be dragged and dropped, made hidden or visible.
| |
| # Activities and resources can be dragged and dropped, made hidden or visible, have the group status changed, etc.
| |
| | |
| Mentor: Martin Dougiamas
| |
| | |
| | |
| === Admin page cleanup ===
| |
| | |
| Design a clean, extensible method for implementing the administration page, which contains hundreds of variables and settings for all the many modules in Moodle.
| |
| # Settings should be organised in a way that is obvious and uncluttered, perhaps using tabs or some other organising structure.
| |
| # New modules should have their settings appear automatically in the admin interface.
| |
| # Define a new plugin structure for arbitrary new admin features under admin/other or something. Moodle 1.6 already has something like this for reports (admin/report).
| |
| # AJAX can be used, it should be optional and accessible, so that it can drop back to the current interface on browsers that are incapable of dealing with dynamic pages.
| |
| # Add bookmarks to each page, so that often-used pages can be added to the admin block on the home page.
| |
| | |
| Mentor: Martin Dougiamas and Urs Hunkler
| |
| | |
| | |
| | |
| More projects are being added here soon ...
| |
| | |
| == Projects under development ==
| |
| | |
| None
| |
| | |
| | |
| [[Category:Developer]]
| |