ddraper

Share Widget Framework Roundup from Alfresco Summit 2013

Blog Post created by ddraper on Nov 14, 2013
by Dave Draper

Introduction



Over the last couple of weeks I've presented a couple of sessions at the Alfresco Summit conferences in Barcelona and Boston. The purpose of these sessions were to socialise the new framework that we're going to be taking for developing the Alfresco Share application going forwards. The PowerPoint slides from these sessions are available at the Summit web site at the following links:


The sessions in Barcelona were also videoed and will be released at some point in the future if you were unable to attend either of the conferences.

Key Points



The key points to take away from the presentations are as follows:



  • It's now possible to create Share pages via a single WebScript that defines a JSON model of widgets and services to include in the page


  • We're going to be continuing to create new widgets for this framework and will be using them for all future Alfresco Share features


  • We're not going to be re-writing all of Share and it will still be possible to create pages using all the old development techniques


  • The majority of widgets that are currently in the Community source should be considered BETA and will be subsequent to change - but we wanted to get some code out to the Community as early as possible


  • Although the framework relies heavily on Dojo, it does not prevent you from developing widgets using any client-side JavaScript framework of your choosing (we've already built widgets using YUI 2, JQuery and ACE)



Page Creation Tools



I've demonstrated two page creation tools that are not included in Alfresco 4.2 - a JSON editor and a drag'n'drop GUI. The tools were created primarily as a means to better demonstrate the power of the widget framework but there have been subsequent requests for these tools to be released to the Community.



[vsw id='iMLk5p9Y9rA' source='youtube' width='425' height='344' autoplay='no']



[vsw id='CPzCFIGOzbM' source='youtube' width='425' height='344' autoplay='no']



Given that these tools are not production quality (they haven't been through our QA process, are not localized and are not accessible) and were not written to meet any specific Alfresco features I'm not going to commit the code to the Community SVN but will instead release them as standalone JAR files.



Unfortunately this won't happen for a few weeks until I can commit some of the supporting code back from development branch to the main Community trunk (otherwise the tools won't work properly). As soon as I make the tools available I'll announce it via the Alfresco Developer Blog and on Twitter.

We Want Your Feedback!



I always stress at the conference sessions how important the Community feedback is to us. This framework is still very much in its infancy and there is plenty of time to contribute to it's development. Our aim is to make it easier to develop and customise Share and we greatly value your comments and criticism and (if you feel we've earned it - your praise! ;) ).



We're aware that there isn't a great deal of documentation around this framework beyond these blogs but we'll endeavour to address this going forwards. If you're trying out the framework either by building page models or writing your own widgets and are struggling with any concepts or code then please start a topic on the forums, raise an issue in JIRA, add comments to this blog or ping me on twitter @_DaveDraper.

Outcomes