Changes

Jump to navigation Jump to search
158 bytes added ,  21:22, 3 July 2009
m
no edit summary
Line 9: Line 9:  
=== Status ===
 
=== Status ===
   −
Karma is a sub-project of Sugar Labs that is under active development as a part of a [[Karma#GSoC_Project| Google Summer of Code project]]. The latest examples can be seen at [http://karma.sugarlabs.org|http://karma.sugarlabs.org]. You can also check out the [http://karmaproject.wordpress.com Karma Project blog] for updates.
+
Karma is a sub-project of Sugar Labs that is under active development as a part of a [[Karma#GSoC_Project| Google Summer of Code project]]. The latest examples can be seen at [http://karma.sugarlabs.org http://karma.sugarlabs.org]. You can also check out the [http://karmaproject.wordpress.com Karma Project blog] for updates.
      Line 34: Line 34:  
=== Design Philosophy ===
 
=== Design Philosophy ===
   −
A Karma lesson is composed of a valid xhtml5 document, javascript code, and css stylesheets. Karma should be very easy for inexperienced developers to understand and work with. Even non-programmers should be able to make visible changes by tweaking the code and liberal use of cut-and-paste. Complexities such as integration with pootle, local storage, and certain types of animation should be abstracted so that novice developers don't have to understand them in order to effectively use Karma. Karma strictly adheres to the Model-View-Controller Pattern and similarly to unobtrusive JavaScript. In essence. you should be able to substantially change the look and feel of a Karma lesson by modifying the CSS without having to understand the JavaScript code.
+
A Karma lesson is composed of a valid html5 document, javascript code, and css stylesheets. Karma should be very easy for inexperienced developers to understand and work with. Even non-programmers should be able to make visible changes by tweaking the code and liberal use of cut-and-paste. Complexities such as integration with pootle, local storage, and certain types of animation should be abstracted so that novice developers don't have to understand them in order to effectively use Karma. Karma strictly adheres to the Model-View-Controller Pattern and similarly to unobtrusive JavaScript. In essence. you should be able to substantially change the look and feel of a Karma lesson by modifying the CSS or you could translate the activity, without having to understand the JavaScript code.  
    
=== Technical Architecture ===
 
=== Technical Architecture ===
    
* Run-time - Karma will work with basic functionality on any W3C standards-compliant browser that supports HTML5 tags canvas and audio. This notably excludes Microsoft's Internet Explorer. Karma will be particularly tailored to work within Sugar's [[Browse]] activity. Longer-term we hope to extend Karma to take advantage of Sugar's collaboration features.
 
* Run-time - Karma will work with basic functionality on any W3C standards-compliant browser that supports HTML5 tags canvas and audio. This notably excludes Microsoft's Internet Explorer. Karma will be particularly tailored to work within Sugar's [[Browse]] activity. Longer-term we hope to extend Karma to take advantage of Sugar's collaboration features.
* Primary Programming language - Javascript (?version?) Karma depends heavily the javascript library jQuery, version 1.3.
+
* Primary Programming language - Javascript ([https://developer.mozilla.org/En/JavaScript 1.8.1]) Karma depends heavily the javascript library jQuery, version 1.3.
 
* i18n -- Pervasive internationalization is a critical part of Karma
 
* i18n -- Pervasive internationalization is a critical part of Karma
 
** Supported types of i18n
 
** Supported types of i18n
Line 52: Line 52:     
   lesson_name/
 
   lesson_name/
               index.html              # valid xhtml5 -- markup only includes visual elements and links in other resources, no inline code or styling
+
               index.html              # valid html5 -- markup only includes visual elements and links in other resources, no inline code or styling
               css/                    # css files -- all control of presentation done in CSS
+
               css/                    # css files   -- all control of presentation done in CSS
 
                   karma.css            # default stylesheet for Karma
 
                   karma.css            # default stylesheet for Karma
 
                   lesson_name.css      # custom stylesheet for lesson
 
                   lesson_name.css      # custom stylesheet for lesson
 
               js/                      # javascript files
 
               js/                      # javascript files
 
                   karma.js            # common javascript functions for a Karma lesson
 
                   karma.js            # common javascript functions for a Karma lesson
                   jquery.js, jquery.growl.js    # utility functions from jquery
+
                   jquery.js, jquery.growl.js    # utility functions from jQuery
 
                   lesson_name.js      # javascript controlling logic for the lesson           
 
                   lesson_name.js      # javascript controlling logic for the lesson           
 
               po/                      # translation files
 
               po/                      # translation files
                   ne_NP.po            # example translation file for US English
+
                   ne_NP.po            # example translation file for Nepal - Nepalli
 
                   sp_ES.po            # example translation file for traditional Spanish
 
                   sp_ES.po            # example translation file for traditional Spanish
        Line 73: Line 72:  
* Working demos at http://karma.sugarlabs.org
 
* Working demos at http://karma.sugarlabs.org
 
* Project Documentation kept in the Sugar Labs wiki
 
* Project Documentation kept in the Sugar Labs wiki
* Code naming conventions ?
+
* Code naming conventions: Based in [http://www.gnu.org/prep/standards/standards.html GNU standards]
 
* File naming conventions: lowercase letters, underscore instead of spaces  (need to write more about it)
 
* File naming conventions: lowercase letters, underscore instead of spaces  (need to write more about it)
  
46

edits

Navigation menu