Future major features

Element Library

Re: Element Library
Freds post - while useful does not contain the detail of an entire branch of code with all the edge cases discovered - that is why me and Sam made branches of different solutions that produce exactly the same output as required by the 4 different frameworks.

All the prototype branches are listed here or on the spec page.

Repeating them:
A) https://github.com/samhemelryk/moodle/tree/output_prototype
B) https://github.com/damyon/moodle/tree/MENU_RENDERABLE
C) https://github.com/samhemelryk/moodle/tree/output_prototype_2
D) https://github.com/samhemelryk/moodle/tree/output_prototype_3

I am mulling over a proper (detailed) response to Freds suggestion which contains a mix of positives and negatives (just like the other suggestions). I think we have not arrived at a solution yet but we are edging closer.
Average of ratings: -
Tim at Lone Pine Koala Sanctuary
Re: Element Library
Core developersDocumentation writersParticularly helpful MoodlersPlugin developers

I know that Fred's post does not contain a complete working prototype of a whole system. Such prototypes are very useful, it is great that you have made them, and I need to find time to study them.

However, what I was trying to say is that small snippets of code, showing particular aspects of the system, really help the explanation. After all, the key things is how this new API looks to users. So, just like we make UI mock-ups in the tracker to quickly make it clear what were are talking about when designing a new bit of Moodle functionality, we need something similar here. API are the 'user-interface' that third-party developers user to interact with Moodle, and it should be possible to present a quick sketch of the key things like:

  • I am making a plugin, and I want to output a user picture.
  • I am a themed and I want to change how the user picture is displayed.
  • I am making a plugin, and I want to define a new thing like a forum post that can be displayed.
Sure, there also needs to be a lot of clever back-end code to make what is shown in the mock-ups work, but that is an implementation detail, and only a few people need to understand that. Many people will need to work with the public face of this in future, so that is why it is worth showing small snippets that mock-up how that will look.
Average of ratings: -