Changes

Jump to navigation Jump to search
no edit summary
Line 1: Line 1: −
<noinclude>{{ GoogleTrans-en | es =show | bg =show | zh-CN =show | zh-TW =show | hr =show | cs =show | da =show | nl =show | fi =show | fr =show | de =show | el =show | hi =show | it =show | ja =show | ko =show | no =show | pl =show | pt =show | ro =show | ru =show | sv =show }}{{TeamHeader|Development Team|roadmap_link=Release/Roadmap/{{Upcoming Stable Release}}}}</noinclude>
+
<noinclude>{{TeamHeader|Development Team|roadmap_link={{Upcoming Stable Release}}/Roadmap}}</noinclude>
{{TOCright}}
+
 
{{:Development Team/Sugar_Architectual_Diagram}}
+
 
 +
{{Note/important|Please note|See this [http://developer.sugarlabs.org/ developer documentation website] for the '''sugar-build''' development environment.}}
 +
 
 +
 
 +
'''Are you looking for [[Activity_Team/Resources|documentation on how to create Sugar Activities]]?'''
 +
 
 +
{{:Development Team/Sugar_Architectural_Diagram}}
 +
 
 +
Sugar is built on top of the GNU/Linux desktop: GTK, X11, D-Bus, Network Manager, Gconf, Telepthay, etc. We use the Matchbox window manager (but are in the process of  switching to Metacity). Sugar provides a data-storage service and a presence service that are accessed through D-Bus, thus Sugar Activities can be coded  in any language. The majority are written in Python, which takes advantage of binding in the Sugar-Toolkit. The Sugar shell manages the desktop and the Journal.
    
== Tutorials ==
 
== Tutorials ==
   −
[http://wiki.laptop.org/go/Developers/Stack#Python/PyGTK PyGTK] developers will find a collection of [http://wiki.laptop.org/go/Tutorials Tutorials] available, from very simple Hello World projects to an in-depth description of the development of [http://wiki.laptop.org/go/Block_Party Block Party].
+
[[olpc:Developers/Stack#Python/PyGTK | PyGTK]] developers will find a collection of [[olpc:Tutorials |Tutorials]] available, from very simple Hello World projects to an in-depth description of the development of [[olpc:Block_Party|Block Party]].
   −
[http://wiki.laptop.org/go/Developers/Stack#OLPCGames Pygame] developers will likely want to start with:
+
[[olpc:Developers/Stack#OLPCGames| Pygame]] developers will likely want to start with:
   −
* [http://wiki.laptop.org/go/Game_Development_Newbies Game Development Newbies] -- general introduction
+
* [[olpc:Game_Development_Newbies| Game Development Newbies]] -- general introduction
* [http://wiki.laptop.org/go/Game_development_HOWTO Game development HOWTO] -- 5-minutes to your first activity in [http://wiki.laptop.org/go/Pygame Pygame]
+
* [[olpc:Game_development_HOWTO |Game development HOWTO]] -- 5-minutes to your first activity in [http://wiki.laptop.org/go/Pygame Pygame]
   −
[http://wiki.laptop.org/go/Developers/Stack#Etoys Etoys]/Smalltalk developers will want to start with [http://wiki.laptop.org/go/Smalltalk_Development_on_XO Smalltalk Development on XO].
+
[[olpc:Developers/Stack#Etoys|Etoys]]/Smalltalk developers will want to start with [olpc:Smalltalk_Development_on_XO|Smalltalk Development on XO]].
   −
Other developers will want to read about [http://wiki.laptop.org/go/Sugarizing Sugarizing] non-Python applications.
+
Other developers will want to read about [[olpc:Sugarizing|Sugarizing]] non-Python applications.
    
== Reference ==
 
== Reference ==
    
* http://api.sugarlabs.org/ -- pointers to the various libraries' reference documentation.
 
* http://api.sugarlabs.org/ -- pointers to the various libraries' reference documentation.
 +
* [[Development Team/Low-level Activity API|Low-level Activity API]] -- how to write Sugar activities without Python
 +
* [[Development Team/Release]] -- Sugar platform release process
    
You can also run the pydoc script on an XO in order to have browseable pydoc documentation locally.  To do this, open a Terminal activity and run:
 
You can also run the pydoc script on an XO in order to have browseable pydoc documentation locally.  To do this, open a Terminal activity and run:
Line 29: Line 39:     
to view the documentation.  This approach works best with Python-coded libraries which have spent some time on their docstrings (and generally requires that you know English, as most docstrings are written in English).
 
to view the documentation.  This approach works best with Python-coded libraries which have spent some time on their docstrings (and generally requires that you know English, as most docstrings are written in English).
  −
== Resources ==
  −
{{:Template:Developers}}
  −
* The [[Template:Developers]] linkbar (just above) can be placed on any wiki page by inserting this text <tt><nowiki>{{:Template:Developers}}</nowiki></tt>  Put on your project's wiki page to help you and collaborators while researching and documenting the code base.
  −
* [[Development Team#Subpages]] shows the pages under the Development Team branch on the wiki.
  −
* The [[:Category:Developer]] collects everything in the wiki that's been tagged as pertaining to developers (it's a bit hard to navigate)
  −
* [[Development Team/Almanac/Code Snippets]] a few canonical code fragments that may be of use when coding in PyGTK
      
== Beginner's tools ==
 
== Beginner's tools ==
Line 61: Line 64:     
As with most Open Source software projects, we have difficulties with documentation.  We are '''very''' interested in finding people interested in documenting the system.  If you are too shy about your coding skills to write code, helping us document the code-base would be an amazing and valuable contribution.
 
As with most Open Source software projects, we have difficulties with documentation.  We are '''very''' interested in finding people interested in documenting the system.  If you are too shy about your coding skills to write code, helping us document the code-base would be an amazing and valuable contribution.
  −
Helping organize the wiki (the web site you are currently reading) to better document the platform and development process would also be very helpful.
  −
  −
=== Wade's handy links list ===
  −
  −
Pulling the source to an existing activity from Git:
  −
  −
* [[Git]]
  −
  −
Creating a new activity:
  −
  −
* [[OLPC:Activity_Tutorial]]
  −
* [[Development Team/Almanac/Code_Snippets]]
  −
* http://dev.laptop.org/~cscott/joyride-1477-api/
  −
  −
For PyGTK activities:
  −
  −
* [[OLPC:PyGTK]]
  −
* [[OLPC:PyGTK/Hello_World_Tutorial]]
  −
* [[OLPC:Beyond_Hello_World]]
  −
* http://www.pygtk.org/docs/pygtk/index.html
  −
  −
For PyGame activities:
  −
  −
* [[OLPC:Pygame]]
  −
* http://pygame.org/docs/ref/index.html
  −
  −
For video playback using gstreamer:
  −
  −
* http://pygstdocs.berlios.de/pygst-reference/index.html
  −
  −
For supporting collaboration:
  −
  −
* [[OLPC:Activity Sharing]]
  −
  −
Submitting to OLPC:
  −
  −
* [[OLPC:Project hosting]]
  −
* [[OLPC:Importing your project]]
  −
      
[[Category:Development Team]]
 
[[Category:Development Team]]
 
[[Category:Resource]]
 
[[Category:Resource]]

Navigation menu