Difference between revisions of "Sugarizer"

From Sugar Labs
Jump to navigation Jump to search
(formatting & typos)
Line 3: Line 3:
 
|- style="vertical-align:top;"
 
|- style="vertical-align:top;"
 
|[[File:Sugarizer_responsive.png|200px|left|link=]]
 
|[[File:Sugarizer_responsive.png|200px|left|link=]]
|The Sugar Learning Platform is a leading learning platform developed for the One Laptop per Child project and used every day by nearly 3 million children around the world. With [http://sugarizer.org/ '''Sugarizer'''], you can discover the Sugar Learning Platform on any device: from the tiny Raspberry PI to the small Android/iOS tablet or the bigger PC/Mac. Enjoy the experience and help us reach every child on every device in every country.
+
|Sugarizer is a way to use Sugar on any device using web technologies (HTML5/JavaScript). Strictly speaking, Sugarizer is not a port of Sugar. Sugarizer is based on [https://github.com/sugarlabs/sugar-web Sugar Web library] that mimic the Sugar UI using HTML5 and CSS3 and reproduce Sugar views (Home, List, ...). Sugarizer reimplement features of Sugar Core (datastore and journal) in JavaScript and integrate a bunch of activities written for Sugar in Sugar Web. So basically, Sugarizer is "just" a launcher of Sugar Web activities. A Sugarizer server part allow collaboration and presence.
  
 
Sugarizer is distributed in the form of 3 components:
 
Sugarizer is distributed in the form of 3 components:
Line 14: Line 14:
 
== Thin Client ==
 
== Thin Client ==
  
[[Image:Sugarizer_thinclient.svg|right|link=]]
+
Sugarizer Thin Client is Sugarizer in a browser. Sugarizer Thin Client doesn't need any installation on the device but requires a permanent access to a Sugarizer Server.
 
 
Sugarizer Thin Client is Sugarizer in a browser. It could work on any device with a recent Chrome/Chromium version, and has also been tested successfully on Firefox, Safari, and IE. Sugarizer Thin Client doesn't need any installation on the device but requires a permanent access to a Sugarizer Server.
 
 
 
[http://server.sugarizer.org/ '''Run it Now''']
 
 
 
Features of Sugarizer Thin Client include:
 
* Sugar Desktop view (Radial, List, and Journal),
 
* Sugar Local data store storage - limited by the browser to 5 MB (see [https://en.wikipedia.org/wiki/Web_storage '''here''']),
 
* Running of remote stored Sugar Web Activities,
 
* Backup or sharing of local storage content to the Server,
 
* Presence and collaboration
 
 
 
Note: You can run Sugarizer from the link above, but the Thin Client access is provided by all the Sugarizer Servers, so you can use others as well.
 
  
 
== Client ==
 
== Client ==
  
[[File:Sugarizer_client.svg|right]]
+
Sugarizer Client is Sugarizer installed locally on the device so it does not require any access to the Server - it works stand-alone. Server access could be required only when it needs network features.
 
 
Sugarizer Client is Sugarizer installed locally on the device so it does not require any access to the Server - it works stand-alone. Server access could be required only when it needs network features. Sugarizer could work on any device with a recent Chrome/Chromium version and has also been tested successfully on Firefox, Safari and IE. Sugarizer Client is available for PC, for Android, iOS, Chrome Web App and for Firefox OS devices.
 
 
 
To install Sugarizer on a PC (GNU Linux/Mac OS/Windows), download the file [http://sugarizer.org/org.olpc-france.sugarizer.zip '''org.olpc-france.sugarizer.zip'''], unzip its content, then launch Chrome using the command line:
 
chrome --allow-file-access-from-files
 
Then open the "index.html" file in the browser. Note that the option "--allow-file-access-from-files" is needed to authorize access to local file. Don't forget to close all other instances of Chrome before using this option. For other browser equivalent options see [https://github.com/mrdoob/three.js/wiki/How-to-run-things-locally '''here''']. Do not hesitate to write a shortcut on this command for future use.
 
 
 
Note that if your browser is Chrome you could install Sugarizer as a Chrome Web App, just go to the Chrome Web Store (see [http://sugarizer.org/#stores '''here''']) and click on it. It avoids you any further installation.
 
 
 
Also, in case you are not able to make Sugarizer work on Chromium on Ubuntu, you might want to consider trying to run it on Firefox.
 
 
 
Features of Sugarizer Client include:
 
 
 
* Sugar Desktop view (Radial, List, and Journal),
 
* Sugar Local data store storage - limited by the browser to 5 MB (see here),
 
* Running of locally stored Sugar Web Activities,
 
* Capability to connect to a server to backup or sharing local storage to the Server,
 
* Presence and collaboration
 
  
 
== Server ==
 
== Server ==
 
[[File:Sugarizer_server.svg|right|link=]]
 
  
 
Sugarizer Server is the back-end for network features of Sugarizer. It means: allow deployment of Sugarizer on a local server, for example on a school server, so expose locally Thin Client (without Internet access). Sugarizer Server can also be used to provide collaboration features for Client and Thin Client on the network. Sugarizer Server could be deployed on any computer with Apache2, Node.js, and MongoDB.
 
Sugarizer Server is the back-end for network features of Sugarizer. It means: allow deployment of Sugarizer on a local server, for example on a school server, so expose locally Thin Client (without Internet access). Sugarizer Server can also be used to provide collaboration features for Client and Thin Client on the network. Sugarizer Server could be deployed on any computer with Apache2, Node.js, and MongoDB.
  
[http://sugarizer.org/org.olpc-france.sugarizer.zip '''Download Server''']
+
A test Sugarizer server instance is accessible [http://server.sugarizer.org/ '''here'''].
 
 
Sugarizer Server features include:
 
 
 
* Sugarizer Thin Client access,
 
* Backup and shared storage for Client and Thin Client,
 
* Presence and collaboration handling between Client/Thin Client on the same network
 
 
 
A Sugarizer server instance is accessible [http://server.sugarizer.org/ '''here'''].
 
 
 
== Sugarizer for Android ==
 
 
 
To install Sugarizer on Android, you could install it directly from Google Play, Amazon App Store, or F-Droid (see [http://sugarizer.org/#stores '''here''']). However if you don't want to use stores, you could download it directly. First "enable installation from unknown sources" in the Android device settings to allow the installation of an application outside Google Play (see [http://www.tech-recipes.com/rx/22616/android-allow-installation-of-non-market-apps/ '''here'''] to learn how). Then download the file [http://sugarizer.org/org.olpc-france.sugarizer.apk '''org.olpc-france.sugarizer.apk'''] from your browser and accept conditions.
 
 
 
[http://sugarizer.org/org.olpc-france.sugarizer.apk '''Download for Android''']
 
 
 
== Sugarizer for Firefox OS ==
 
 
 
To install Sugarizer on Firefox OS, you could install it directly from the Firefox Marketplace (see [http://sugarizer.org/#stores '''here''']). However if you don't want to use the marketplace, you could download it directly. Just click on the button below and follow instructions on the next screen.
 
 
 
[http://sugarizer.org/firefoxos '''Download for Firefox OS''']
 
 
 
== How does it work ==
 
 
 
Sugarizer reproduces the main features of the Sugar learning platform in HTML5/JavaScript. Sugarizer also exposes these features to allow running of Sugar web activities written for Sugar 0.100. So all activities included in the Sugarizer package work the same on Sugar 0.100.
 
  
== Where can I find the Source Code ==
+
== Source Code ==
  
The source code of Sugarizer is available on [https://github.com/llaske/Sugarizer '''github'''], fork the repo to start hacking!
+
The source code of Sugarizer is available on [https://github.com/llaske/Sugarizer '''github'''].
 +
See the [https://github.com/llaske/sugarizer/blob/master/README.md README file] for installation instructions.

Revision as of 16:33, 18 January 2016

Sugarizer responsive.png
Sugarizer is a way to use Sugar on any device using web technologies (HTML5/JavaScript). Strictly speaking, Sugarizer is not a port of Sugar. Sugarizer is based on Sugar Web library that mimic the Sugar UI using HTML5 and CSS3 and reproduce Sugar views (Home, List, ...). Sugarizer reimplement features of Sugar Core (datastore and journal) in JavaScript and integrate a bunch of activities written for Sugar in Sugar Web. So basically, Sugarizer is "just" a launcher of Sugar Web activities. A Sugarizer server part allow collaboration and presence.

Sugarizer is distributed in the form of 3 components:

  • Thin Client: remote access to Sugarizer using a browser,
  • Client: Sugarizer running locally,
  • Server: place to run remote Sugarizer features.

Thin Client

Sugarizer Thin Client is Sugarizer in a browser. Sugarizer Thin Client doesn't need any installation on the device but requires a permanent access to a Sugarizer Server.

Client

Sugarizer Client is Sugarizer installed locally on the device so it does not require any access to the Server - it works stand-alone. Server access could be required only when it needs network features.

Server

Sugarizer Server is the back-end for network features of Sugarizer. It means: allow deployment of Sugarizer on a local server, for example on a school server, so expose locally Thin Client (without Internet access). Sugarizer Server can also be used to provide collaboration features for Client and Thin Client on the network. Sugarizer Server could be deployed on any computer with Apache2, Node.js, and MongoDB.

A test Sugarizer server instance is accessible here.

Source Code

The source code of Sugarizer is available on github. See the README file for installation instructions.