Note: You are currently viewing documentation for Moodle 3.1. Up-to-date documentation for the latest stable version of Moodle is probably available here: Moodle User Interface Guidelines.

Development:Moodle User Interface Guidelines: Difference between revisions

From MoodleDocs
 
(30 intermediate revisions by 2 users not shown)
Line 1: Line 1:
__NOTOC__
__NOTOC__
{{Work in progress|forumurl=http://moodle.org/mod/forum/discuss.php?d=126884|info=<br /><br />'''The greatest risk of this effort is that developers may not find it when they need it, while designing parts of Moodle. '''Please help:  look at what is here already now, and comment: How could it serve ''your'' development work better? What aspects of user interface design would you need clear guidelines on? If there is any reason you feel you can not benefit from the guidelines, please tell me about it in the [http://moodle.org/mod/forum/discuss.php?d=126884 developer forum thread]. See also: [[Development:Moodle User Interface Guidelines:Introduction|Introduction]]}}
<p class="note">


* [[Development:Moodle User Interface Guidelines:Introduction|Introduction]]
DRAFT DOCUMENT
<br /><br />
 
Many of the pages below are incomplete or obsolete.
<br /><br />
 
These guidelines were produced as part of a student project in 2009, and are not yet official Moodle guidelines.
</p>
 
 
These guidelines are to be used as a '''UI reference library''' by Moodle developers when creating user interfaces.
 
It does not catalogue all the elements in use in Moodle, but is intended a reference of reusable elements sharing that common Moodle style. We aim to update this reference as new common practices appear. [[Development:Moodle User Interface Guidelines:Introduction|More...]]
* [[Development:Moodle User Interface Guidelines:Help requested|Help requested: comment on these guidelines]]
* [[Development:Moodle User Interface Guidelines:Help requested|Help requested: comment on these guidelines]]


==Moodle basics==
==Moodle basics==
* Hierarchy of a Moodle site ([http://moodle.org/mod/forum/discuss.php?d=115620 one attempt])
* [[Development:Page structure and types|Page structure and different page types]]
* [[Development:Page structure and types|Page structure and different page types]]
* [[Roles and capabilities]]
* [[Roles and capabilities]]
Line 15: Line 26:
=== Elements ===
=== Elements ===
* [[Development:Big Select List|Big Select List]]
* [[Development:Big Select List|Big Select List]]
* Hierarchy Browsing List


* [[Development:Tooltip|Tooltip]]
* [[Development:Tooltip|Tooltip]]
* [[Development:Link|Link]]
* [[Development:Link|Link]]
* [[Development:Button|Button]]
* [[Development:Button|Button]]
* [[Development:Page Heading|Page Heading]]
* [[Development:Address Bar|Address Bar]] (URLs)


=== Interaction Styles ===
=== Interaction Styles ===
* [[Development:Wizard|Wizard]]
* [[Development:Wizard|Wizard]]
* [[Development:Help Popups|Help Popups]]
* [[Development:Help Popups|Help Popups]] (See [[Development:Interface_guidelines#Linking_to_help|Linking to help]] for now)
* [[Development:Feedback page|Feedback page]]
* [[Development:Feedback page|Feedback page]]
* [[Development:Form|Form]] (incomplete)
* [[Development:Form|Form]] (incomplete)
Line 30: Line 40:
** [[Development:Checkbox|Checkbox]]
** [[Development:Checkbox|Checkbox]]
** [[Development:Dropdown Lists|Dropdown lists]] (incomplete)
** [[Development:Dropdown Lists|Dropdown lists]] (incomplete)
== General design guidelines ==
== General design guidelines ==
* [[Development:Progressive Disclosure|Progressive Disclosure]]
* [[Development:Progressive Disclosure|Progressive Disclosure]]
Line 45: Line 56:
* [http://library.gnome.org/devel/hig-book/stable/principles-direct-manipulation.html.en Provide Direct Manipulation]
* [http://library.gnome.org/devel/hig-book/stable/principles-direct-manipulation.html.en Provide Direct Manipulation]


== Missing guidelines ==


=== Unwritten guidelines ===
* [http://developer.fellowshipone.com/patterns/ Design Patterns Library & Code Standards] by Fellowship technologies
* Building blocks
** [[Development:Course Format|Course Format]]
** Block (not a technical guide but a guideline how what to take into account when using a block as a part of a design)
** Filter
** Module (not a technical guide but a guideline how what to take into account when using a module as a part of a design)
* Dialog
* Popup Window
* Link lists (menus)


=== Guidelines that require further research/discussion ===
== See also ==
'''[[Development:Major usability issues in Moodle]] (separate design projects)'''
* Further development on Talk page: [[Development_talk:Moodle_User_Interface_Guidelines]]
* '''[[Using Moodle book]]'''


These are plans to create new interaction styles, switch existing conventions for more usable ones, or issues that are still unclear and need to be further discussed to become actual guidelines.
* [[Development:Switch Button|Switch Button]]
* [[Development:Add element|Add element]]
* [[Development:Jump Navigation|Jump Navigation]]
* Move Element (Course front page model vs. quiz)
* Quick Inline Help ([http://www.pilpi.net/software/moodle/2009/06/18/inline-help/] for now)
* Further research required: Search
* Further research required: Editing modes
* Further research required: Data Listing
* Waiting for developments of Navigation 2.0: Tabs
* Command Popup Menu
== See also ==
'''[[Using Moodle book]]'''
=== About writing these guidelines ===
* Some pages use the [[Development:Guideline template|Guideline template]], others are freeform prose
=== Usability in Moodle ===
=== Usability in Moodle ===
* [[Development:Usability|Usability]]
* [[Development:Usability|Usability]]
Line 85: Line 71:
* UI coding: [[Development:Interface_guidelines]]
* UI coding: [[Development:Interface_guidelines]]


== Todo ==
 
* [[Development:Moodle User Interface Guidelines:Problem-Solution Summary Table|Problem-Solution Summary Table]] (TODO: See [http://www.hillside.net/patterns/writing/patterns.htm#E.1.1])
[[Category:Developer|User Interface Guidelines]]
* [[Development:Moodle User Interface Guidelines:Glossary|Glossary]]
[[Category:Developer tools|User Interface Guidelines]]
[[Category:Usability|User Interface Guidelines]]
[[Category:Moodle User Interface Guidelines]]

Latest revision as of 11:46, 22 May 2010

DRAFT DOCUMENT

Many of the pages below are incomplete or obsolete.

These guidelines were produced as part of a student project in 2009, and are not yet official Moodle guidelines.


These guidelines are to be used as a UI reference library by Moodle developers when creating user interfaces.

It does not catalogue all the elements in use in Moodle, but is intended a reference of reusable elements sharing that common Moodle style. We aim to update this reference as new common practices appear. More...

Moodle basics

Moodle UI library

UIs are built of Elements and Interaction Styles (bigger wholes, which are built of Elements).

Elements

Interaction Styles

General design guidelines

Relevant guidelines from other sites


See also

Usability in Moodle

Implementation advice