Changes

Jump to navigation Jump to search
3,089 bytes added ,  19:58, 10 January 2009
New page: =Getting started in Activity development= If you have no experience developing Sugar activities and want to get started, these resources should help you get going. ====Setting up a Sugar ...
=Getting started in Activity development=
If you have no experience developing Sugar activities and want to get started, these resources should help you get going.

====Setting up a Sugar environment====
If you use Linux, your best bet is to install sugar-jhbuild. You will be able to develop in your native environment, treating Sugar as just another desktop application.

If you run MacOS X or Windows, you will need to set up an emulator. For Mac OS X, see [[Supported_systems/Mac]]. For Windows, see [[Supported_systems/Windows]].

To develop efficiently using an emulator or a real XO, find an editor which supports editing files over a SFTP connection. Komodo Edit is a good example.

====Python Reference & Tutorials====
* http://docs.python.org/
* http://diveintopython.org/

Python is the language Sugar is written in and is also used by most activities. If you don't already know Python well, you should familiarize yourself with it before continuing.

====PyGTK Reference & Tutorials====
* http://www.pygtk.org/docs/pygtk/index.html
* http://www.pygtk.org/docs/pygobject/index.html

PyGTK is the user interface toolkit used by Sugar activities. Bookmark these two links as you will reference them frequently during development.

* http://www.pygtk.org/pygtk2tutorial/index.html

The following sections of the PyGTK tutorial are most relevant to activity development.

* 1. Introduction
* 2. Getting Started
* 3. Moving On
* 4. Packing Widgets
* 5. Widget Overview
* 6. The Button Widget
* 7. Adjustments
* 8. Range Widgets
* 9. Miscellaneous Widgets
* 10. Container Widgets
* 12. Drawing Area

====Sugar Activity Tutorial====
* http://wiki.laptop.org/go/Sugar_Activity_Tutorial

This will introduce you to the basics of creating activities.

====Sugar Human Interface Guidelines====
* http://wiki.laptop.org/go/OLPC_Human_Interface_Guidelines.

This will give you a good introduction to the thought process behind the Sugar environment and will help a lot when designing your activity.

====JSON introduction====
* http://www.json.org/fatfree.html

JSON is a data format commonly used to store activity data in the Journal.

====Git introduction====
* http://wiki.laptop.org/go/Git

Git is the version control software used by OLPC. It is a distributed version control system and is quite powerful, but requires a lot of command line use.

=Activity Development Resources=
This is an open area for posting links related to activity development.

===API References===
* http://api.sugarlabs.org/ The official Sugar API documentation (quite sparse).
* http://wiki.laptop.org/go/Sugar_almanac
* http://pygstdocs.berlios.de/ Python GStreamer bindings.

===Tutorials and Whitepapers===
* http://www.olpcaustria.org/mediawiki/index.php/Activity_handbook Introduction to activity development by OLPC Austria.

=People=

If you have a question, don't hesitate to ask the activity team. We are happy to help and can often save you a lot of hunting for answers.

We hang out in #sugar on irc.freenode.net, and you can always post questions to sugar-devel@lists.sugarlabs.org.
273

edits

Navigation menu