Introduction
------------

.. container:: title

    Start Developing Kivy Apps Right Away!

Creating Kivy apps is fun and rewarding. This guide should be the perfect
starting point to get you on the right track for app development. You will
require a basic knowledge of Python to follow this introduction.

.. image:: ../images/gs-introduction.png
    :align: center
    :height: 255px

If you need more background on the Python language, you might be interested in
these tutorials:

* `The Official Python Tutorial <https://docs.python.org/tutorial/>`_
* `Learn Python in 10 minutes <https://www.stavros.io/tutorials/python/>`_
* `Learn Python the hard way <https://learnpythonthehardway.org/>`_

With Kivy, you can create apps that run on:

- Desktop computers: macOS, Linux, *BSD Unix, Windows.
- iOS devices: iPad, iPhone.
- Android devices: tablets, phones.
- Any other touch-enabled professional/homebrew devices supporting TUIO
  (Tangible User Interface Objects).

Kivy empowers you with the freedom to write your code once and have it run
as-is on different platforms.

Follow this guide to get the tools you need, understand the major concepts and
learn best practices. As this is an introduction, pointers to more information
will be provided at the end of each section.

As you proceed through the guide, you will, using Kivy:

- **Learn**:    The basics of programming with the Kivy language.
- **Explore**:  The Kivy framework.
- **Create**:   A simple cross-platform app.
- **Package**:  For your choice of platform.

Finally, you will learn how to **Deploy** on the device of your choice.

Each section of the guide introduces a new topic, trying to give you enough
information to get started and links to related articles for more in-depth
explanations. When you are done with this guide, you'll be able to develop Kivy
apps and you will know where to look for information for the more challenging
stuff your innovative applications will require.

Enough introductions, let's get down to business.
