Developer Area: Difference between revisions
From Mahara Wiki
(Removing the old-style formatting. It's actually harder to browse the page when everything is in randomly positioned columns instead of lists.) |
|||
Line 3: | Line 3: | ||
This is for people who want to understand how Mahara works, or want to develop new code or plugins for Mahara. If you want to customise your Mahara - e.g. change the language/theme, or simply install plugins, check out the [[Customising]] section. | This is for people who want to understand how Mahara works, or want to develop new code or plugins for Mahara. If you want to customise your Mahara - e.g. change the language/theme, or simply install plugins, check out the [[Customising]] section. | ||
==Developer Documentation== | == Developer Documentation == | ||
* [[Developer Area/Mahara Architecture Introduction|Mahara Architecture Introduction]] - this series of articles explains how Mahara fits together, where it's pluggable and why it's written the way it is. | * [[Developer Area/Mahara Architecture Introduction|Mahara Architecture Introduction]] - this series of articles explains how Mahara fits together, where it's pluggable and why it's written the way it is. | ||
Line 11: | Line 11: | ||
* [[User:Aaronw]] - Aaron's work-in-progress Developer Docs version 2 | * [[User:Aaronw]] - Aaron's work-in-progress Developer Docs version 2 | ||
=== Finding your way around === | |||
* [[Developer_Area/Mahara_Architecture_Introduction|Mahara Architecture Introduction]] | * [[Developer_Area/Mahara_Architecture_Introduction|Mahara Architecture Introduction]] | ||
* [[Developer_Area/Core_Subsystems|Core Subsystems]] | * [[Developer_Area/Core_Subsystems|Core Subsystems]] | ||
Line 33: | Line 24: | ||
* [[Developer_Area/CLI_Framework|Command Line Interface Framework]] | * [[Developer_Area/CLI_Framework|Command Line Interface Framework]] | ||
=== Getting set up === | |||
* [[Developer_Area/Developer_Tools|Setting up your development tools]] | * [[Developer_Area/Developer_Tools|Setting up your development tools]] | ||
* [[Developer Area/Developer Environment|Setting up a development environment]] | * [[Developer Area/Developer Environment|Setting up a development environment]] | ||
Line 50: | Line 31: | ||
* [[Developer_Area/Changing_Hostnames|Changing Hostnames]] | * [[Developer_Area/Changing_Hostnames|Changing Hostnames]] | ||
=== Contributing improvements === | |||
* [https://mahara.org/tracker/ How to submit good bug reports] | * [https://mahara.org/tracker/ How to submit good bug reports] | ||
* [[Developer_Area/Bug_Status|Bug Status Policy]] | * [[Developer_Area/Bug_Status|Bug Status Policy]] | ||
Line 70: | Line 41: | ||
* [[Developer_Area/Unit_Testing|Unit Testing]] | * [[Developer_Area/Unit_Testing|Unit Testing]] | ||
=== Join in the discussion === | |||
We have [http://mahara.org/group/view.php?id=1 a discussion forum] on mahara.org. | We have [http://mahara.org/group/view.php?id=1 a discussion forum] on mahara.org. | ||
Line 87: | Line 48: | ||
If you have not got an IRC client or cannot connect with one, you can use the [http://webchat.freenode.net/?channels=mahara-dev&uio=MTE9MTAz8d freenode web client]. | If you have not got an IRC client or cannot connect with one, you can use the [http://webchat.freenode.net/?channels=mahara-dev&uio=MTE9MTAz8d freenode web client]. | ||
=== Meeting minutes & dev team notes === | |||
* [[Developer_Area/Developer_Meetings|Developer Meetings]] | * [[Developer_Area/Developer_Meetings|Developer Meetings]] | ||
* [[Developer_Area/Packaging|Packaging]] | * [[Developer_Area/Packaging|Packaging]] | ||
Line 106: | Line 58: | ||
* [[Developer_Area/Significant_Bug_Documentation|Fixes for significant bugs that might bite later]] | * [[Developer_Area/Significant_Bug_Documentation|Fixes for significant bugs that might bite later]] | ||
== Useful Resources == | |||
==Useful Resources== | |||
* You can [https://code.launchpad.net/~vcs-imports/mahara/master/+subscribe subscribe to the master branch] on Launchpad to receive an email everytime a commit is made. There is also an [http://gitorious.org/mahara/mahara.atom RSS feed of commits] if you prefer to receive information that way. | * You can [https://code.launchpad.net/~vcs-imports/mahara/master/+subscribe subscribe to the master branch] on Launchpad to receive an email everytime a commit is made. There is also an [http://gitorious.org/mahara/mahara.atom RSS feed of commits] if you prefer to receive information that way. |
Revision as of 15:07, 8 November 2013
Here is a bunch of developer documentation for Mahara, including design, policy and specific feature documents.
This is for people who want to understand how Mahara works, or want to develop new code or plugins for Mahara. If you want to customise your Mahara - e.g. change the language/theme, or simply install plugins, check out the Customising section.
Developer Documentation
- Mahara Architecture Introduction - this series of articles explains how Mahara fits together, where it's pluggable and why it's written the way it is.
- Plugins - (soon to be) your one-stop-shop for information about developing plugins for Mahara
- Language Packs - how to write a language pack for Mahara, and how to contribute it back
- Wishlist - what documentation did you find missing and would like people to contribute?
- User:Aaronw - Aaron's work-in-progress Developer Docs version 2
Finding your way around
- Mahara Architecture Introduction
- Core Subsystems
- Database conventions
- Development Tutorials
- How to write a view template
- Import/Export
- Language Packs
- Plugins
- Release Policy
- Command Line Interface Framework
Getting set up
- Setting up your development tools
- Setting up a development environment
- Getting Code from Git
- Changing Hostnames
Contributing improvements
- How to submit good bug reports
- Bug Status Policy
- Bite sized code tasks
- Coding guidelines
- Contributing Code
- Commit Policy
- How to Review Code
- Unit Testing
Join in the discussion
We have a discussion forum on mahara.org.
You can also find us in #mahara-dev on irc.freenode.net
If you have not got an IRC client or cannot connect with one, you can use the freenode web client.
Meeting minutes & dev team notes
- Developer Meetings
- Packaging
- Release Instructions
- Security Team
- Specifications in Development
- Fixes for significant bugs that might bite later
Useful Resources
- You can subscribe to the master branch on Launchpad to receive an email everytime a commit is made. There is also an RSS feed of commits if you prefer to receive information that way.
- #mahara-dev on freenode (irc.freenode.org) is an IRC channel where the core developers discuss the development of Mahara. This channel is not for support of Mahara (use #mahara instead), but you can lurk and listen in on developer conversations - and even hear about the latest new features as they're added ;)