Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Developer documentation: Difference between revisions

From MoodleDocs
(→‎How you can contribute: added enrolment and authentication)
(Moved guidelines and resources to the top and edited the sections a bit)
Line 1: Line 1:
==Guidelines==
The following guidelines are crucial reading for anyone wanting to contribute to the Moodle code base:
*[[Coding|Coding guidelines]] have to be followed by all Moodle developers
*[[Moodle architecture]] spells out the basic design goals behind Moodle
*[[Interface guidelines]] aim to provide a common feel to the Moodle user interface
*[[CVS (developer)|Moodle CVS for developers]] explains how to work with the Moodle code in CVS
== Resources and tools ==
*[http://moodle.org/bugs/ Moodle bug tracker] - bug reports, feature requests and other tracked issues
*[http://moodle.org/mod/forum/view.php?id=55 General developer forum]
*[http://cvs.sourceforge.net/viewcvs.py/moodle/moodle/ CVS code] - browse the Moodle code via the web
*[http://moodle.org/xref/nav.html?index.html Cross reference] - phpxref output for browsing Moodle source code
*[http://moodle.sourceforge.net/dhawes-phpdoc/ Moodle PHP doc reference] - automatically generated documentation
*[http://moodle.org/course/view.php?id=5#4 Development news and discussion] section of Using Moodle course
*[[Unmerged files]] - changes on the stable branch in CVS that have not been merged to HEAD
==How you can contribute==
==How you can contribute==


Line 19: Line 36:
*[[Tests|Testing]]
*[[Tests|Testing]]
*[[Bug tracker|Participating in the bug tracker]]
*[[Bug tracker|Participating in the bug tracker]]
==Guides for developers==
*[[Moodle architecture]]
*[[Coding|Coding guidelines]]
*[[Interface guidelines]]
*[[CVS (developer)|Moodle CVS for developers]]
*[[Tracking Moodle CVS with git]]


==Plans for the future==
==Plans for the future==
Line 48: Line 58:
==Documentation for contributed code==
==Documentation for contributed code==
Many Moodle users contribute code for the benefit of other Moodle users. This can take the form of new activity modules, blocks, themes, resource plug-ins, assignment plug-ins, question type plug-ins, question import/export formats, quiz report plug-ins, course formats, ... This code is initially posted on the forums in the [http://moodle.org/course/view.php?id=5 Using Moodle] course and then often go into the [http://cvs.sourceforge.net/viewcvs.py/moodle/contrib/ contrib area] of the Moodle [[CVS]] repository. Developer documentation for these components should be listed here.
Many Moodle users contribute code for the benefit of other Moodle users. This can take the form of new activity modules, blocks, themes, resource plug-ins, assignment plug-ins, question type plug-ins, question import/export formats, quiz report plug-ins, course formats, ... This code is initially posted on the forums in the [http://moodle.org/course/view.php?id=5 Using Moodle] course and then often go into the [http://cvs.sourceforge.net/viewcvs.py/moodle/contrib/ contrib area] of the Moodle [[CVS]] repository. Developer documentation for these components should be listed here.
== Developer resources and tools ==
*[http://moodle.org/bugs/ Moodle bug tracker] - bug reports, feature requests and other tracked issues
*[http://cvs.sourceforge.net/viewcvs.py/moodle/moodle/ CVS code]
*[http://moodle.org/xref/nav.html?index.html Cross reference] - phpxref output for browsing Moodle source code
*[http://moodle.org/mod/resource/view.php?id=1267 Core API]
*[http://moodle.sourceforge.net/dhawes-phpdoc/ Moodle PHP doc reference]
*[[Unmerged files|1.4 and 1.5 un-merged files]]


==See also==
==See also==

Revision as of 08:15, 1 April 2006

Guidelines

The following guidelines are crucial reading for anyone wanting to contribute to the Moodle code base:

Resources and tools

How you can contribute

The M in Moodle stands for 'Modular'. There are many different types of components that you can contribute that can be plugged into Moodle to provide additional funtionality. Even if you are not a programmer there are things you can change or help with.

You can also help a lot by

Plans for the future

Ideas for and details of planned future features of Moodle are initially discussed on the forums in the Using Moodle course at moodle.org. That developer discussions are intermixed with user discussions in the same forums may seem strange at first but is one of the reasons for the success of Moodle. It is important that both end-users and developers discuss the future features together.

Once ideas begin to crystalize on the forums they can be summarized in this wiki, either as part of the Roadmap or in the form of Developer notes. These pages then form the basis for further discussion in the forums.

Documentation for core components

This section is for documentation of specific components of the existing core Moodle code. Discussion of components that are under discussion or in development can be found in the Developer notes or on the Roadmap.

Documentation for contributed code

Many Moodle users contribute code for the benefit of other Moodle users. This can take the form of new activity modules, blocks, themes, resource plug-ins, assignment plug-ins, question type plug-ins, question import/export formats, quiz report plug-ins, course formats, ... This code is initially posted on the forums in the Using Moodle course and then often go into the contrib area of the Moodle CVS repository. Developer documentation for these components should be listed here.

See also