Difference between revisions of "Sugarizer"

From Sugar Labs
Jump to navigation Jump to search
 
(6 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[File:Sugarizer_server.svg]
+
__TOC__
 
+
{|
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 could 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 children on every device in every country.
+
|- style="vertical-align:top;"
 +
|[[File:Sugarizer_responsive.png|200px|left|link=]]
 +
|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], which mimics the Sugar UI using HTML5 and CSS3 and reproduces Sugar views (Home, List, ...). Sugarizer reimplements features of Sugar Core (datastore and journal) in JavaScript and integrates a bunch of activities written for Sugar in Sugar Web. So basically, Sugarizer is "just" a launcher of Sugar Web activities. A Sugarizer server component allows collaboration and presence.
 +
Sugarizer could run any Sugar activities written in HTML5/JavaScript (Gears, Abecedarium, ...) and include a bunch of Sugar activities written initially in Python an ported in HTML5/JavaScript (Physics, Paint, ...).
  
 
Sugarizer is distributed in the form of 3 components:
 
Sugarizer is distributed in the form of 3 components:
Line 8: Line 11:
 
* [http://sugarizer.org/#client '''Client''']: Sugarizer running locally,
 
* [http://sugarizer.org/#client '''Client''']: Sugarizer running locally,
 
* [http://sugarizer.org/#server '''Server''']: place to run remote Sugarizer features.
 
* [http://sugarizer.org/#server '''Server''']: place to run remote Sugarizer features.
 +
|}
  
 
== Thin Client ==
 
== Thin Client ==
  
[Image:Sugarizer_thinclient.svg|right]
+
Sugarizer Thin Client is Sugarizer in a browser. Sugarizer Thin Client doesn't need any installation on the device but requires 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 5Mb (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 ==
  
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.
+
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.
 
 
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 will avoid you any 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 5Mb (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 ==
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''']
 
 
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 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 reproduce main features of the Sugar learning platform in HTML5/JavaScript. Sugarizer also expose these features to allow running of Sugar web activities wrote for Sugar 0.100. So all activities included in the Sugarizer package work in the same on Sugar 0.100.
+
A test Sugarizer server instance is accessible [http://server.sugarizer.org/ '''here'''].
  
== 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.

Latest revision as of 04:06, 5 June 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, which mimics the Sugar UI using HTML5 and CSS3 and reproduces Sugar views (Home, List, ...). Sugarizer reimplements features of Sugar Core (datastore and journal) in JavaScript and integrates a bunch of activities written for Sugar in Sugar Web. So basically, Sugarizer is "just" a launcher of Sugar Web activities. A Sugarizer server component allows collaboration and presence.

Sugarizer could run any Sugar activities written in HTML5/JavaScript (Gears, Abecedarium, ...) and include a bunch of Sugar activities written initially in Python an ported in HTML5/JavaScript (Physics, Paint, ...).

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 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.