Karma/Bundle layout

Karma Builder bundle

Consists of an HTML5 capable browser (activity), a lesson bundle, examples, and utilities to start working with Karma quickly


  • similar to E-Paath layout
  • script for Karma activity generation, xo bundle generation
  • includes "platform" files, i.e. a basic html5-capable browser that can be used to create an xo bundle


   AUTHORS                         # Should include names of everyone that has contributed to KarmaBuilder
   ChangeLog                       
   COPYING                         # Licensing information, should default to MIT License   ? how distinguish b/w code licensing and content licensing
   css/                            # css/ and js/ contain the code common to all examples, lessons, and karma.html
   examples/                       # working examples of karma lessons
   js/                             # css/ and js/ contain the code common to all examples, lessons, and karma.html
   INSTALL                         
   karma.html                      # The starting page for accessing Karma lessons, should include links to the examples
   karma                           # This script launches karma.js, essentially it just checks if you have java installed so you can run karma.js (which depends on java)
   karma.js                        # The main utility script for karma, all it dependencies live in utils/
   lessons/                        # this is the workspace for creating new Karma lessons
   locale/
          default/
                  images/
                  karma.pot
                  sounds/
          locale_name/
                   images/
                   locale_name.json
                   locale_name.po
                   sounds/
   NEWS                             # List of important changes to this package indexed by version
   platform/                        # An html5-capable browser that can be used to create sugar .xo bundle
   README
   utils/                           # The narwhal command-line interpreter for javascript and other utility scripts used by karma.js

Karma lesson bundle

consists of multiple lesson in a single bundle

  • common jquery and css files in a single folder
  • preferably a script can be used to generate a lesson bundle with accompanying main menu and search (probably some sort of sitemap)
 bundle_name/
             mainmenu.html
             css/                     # common css files (e.g. jquery.jgrowl.css and menu.css)
             js/                      # common javascript / jquery files
             lessons/                 # directory for all the lessons
                    lesson_name/
             

Lesson

consists of a single lesson

 lesson_name/
             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
                 karma.css            # default stylesheet for Karma
                 lesson_name.css      # custom stylesheet for lesson
             js/                      # javascript files
                 karma.js             # common javascript functions for a Karma lesson
                 jquery.js, jquery.growl.js    # utility functions from jQuery
                 lesson_name.js       # javascript controlling logic for the lesson          
             po/                      # translation files
                 ne_NP.po             # example translation file for Nepal - Nepali
                 sp_ES.po             # example translation file for traditional Spanish
             assets/
                    ne/
                       images/
                       audio/
                       docs/
                            lesson plan?
                            teachers note? 
                    en/
                       images/
                       audio/