//
// Copyright (c) 2014,2017 LAAS/CNRS
// All rights reserved.
//
// Permission to use, copy, modify,  and distribute this software for any
// purpose with or without fee is hereby granted, provided that the above
// copyright notice and this permission notice appear in all copies.
//
// THE  SOFTWARE  IS  PROVIDED  "AS  IS" AND  THE  AUTHOR  DISCLAIMS  ALL
// WARRANTIES  WITH  REGARD  TO   THIS  SOFTWARE  INCLUDING  ALL  IMPLIED
// WARRANTIES  OF MERCHANTABILITY  AND  FITNESS. IN  NO  EVENT SHALL  THE
// AUTHOR BE  LIABLE FOR ANY SPECIAL, DIRECT,  INDIRECT, OR CONSEQUENTIAL
// DAMAGES OR ANY DAMAGES WHATSOEVER  RESULTING FROM LOSS OF USE, DATA OR
// PROFITS,  WHETHER  IN  AN  ACTION  OF CONTRACT,  NEGLIGENCE  OR  OTHER
// TORTIOUS  ACTION, ARISING  OUT OF  OR IN  CONNECTION WITH  THE  USE OR
// PERFORMANCE OF THIS SOFTWARE.
//
//                                      Anthony Mallet on Tue Jul 22 2014
//

= Tutorials

ifdef::sidebartoc[]
include::_Sidebar.adoc[]
endif::[]

This section contains several tutorials that should help you to get started with
Genom. They are sorted by ascending order of complexity, so they should be read
in order.

<<workflow#,Genom workflow>>::
Getting used to running genom, generating code and compiling components.

<<add-function#,Simple service>>::
A component with a simple service implemented as a `function`.

<<ids#,IDS (Internal Data Structure)>>::
Sharing private data between codels

<<external-software#,Working with external software>>::
How to describe external software dependencies in a component.
