rave-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Erin Noe-Payne (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (RAVE-891) Refactor Rave js to modularize functionality and isolate dependencies
Date Tue, 12 Mar 2013 21:13:13 GMT

     [ https://issues.apache.org/jira/browse/RAVE-891?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Erin Noe-Payne updated RAVE-891:
--------------------------------

    Attachment: RAVE-891.diff

First patch for 891

                
> Refactor Rave js to modularize functionality and isolate dependencies 
> ----------------------------------------------------------------------
>
>                 Key: RAVE-891
>                 URL: https://issues.apache.org/jira/browse/RAVE-891
>             Project: Rave
>          Issue Type: Epic
>            Reporter: Erin Noe-Payne
>         Attachments: RAVE-891.diff
>
>   Original Estimate: 336h
>  Remaining Estimate: 336h
>
> Roadmap:
> - Establish rave.ui namespace that manages all ui interactions
> - Find all instances of inline html and dom building in rave.js, move to client side
templates available on rave.ui.templates
> - Add backbone js, extend custom implementations of Backbone Models, Collections and
Views on the rave namespace.
> - Isolate all dependencies on jquery, handlebars and other libraries inside rave.ui files
(except ajax), such that an implementer could remove these dependencies and easily replace
with an implementation using other dom manipulation or templating libraries. The only dependency
of rave core code should be underscore.js utility library.
> - Establish rave.ajax namespace. Isolate all jquery ajax dependencies here, such that
an implementer could overlay their implementation with a preferred ajax library. See backbone.js
sync for a reference (http://backbonejs.org/#Sync).
> - Update providers (rave_opensocial, rave_wookie) to establish a consistent interface
for gadget objects and properly set up and tear down gadgets. Currently there are some issues
with not correctly firing lifecycle events or creating potential memory leaks with gadget
closing.
> - Investigate, refactor or remove rave_person_profile.js. Appears to be a lot of duplicated
code, not clear why it is a separate file.
> Goals:
> - Write rave js with extensibility in mind. Build modules to be configurable, and write
the default rave ui as configuration rather than hard-coded
> - Look for opportunities and keep focus on backend as services delivering json data,
reduce the workload of thick views (jsps). Allow the client to manage views and state with
more flexibility

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message