mirror of https://github.com/kivy/kivy.git
Docs: first try to summarize a few reasons why one'd want to use kivy...
This commit is contained in:
parent
05ad229330
commit
07aa623e6d
|
@ -4,10 +4,15 @@ Welcome to Kivy
|
|||
Welcome to Kivy's documentation. Kivy is an open source software library for rapid
|
||||
development of applications equipped with novel user interfaces, such as
|
||||
multi-touch apps.
|
||||
|
||||
You are probably wondering why you'd be interested in using Kivy. There is
|
||||
a document outlining our :ref:`philosophy` we encourage you to read.
|
||||
|
||||
We recommend that you get started with :ref:`installation` and then head over to
|
||||
the :ref:`quickstart` document. Besides the quickstart, there is also a more
|
||||
detailed :ref:`tutorial` that shows how to create an application with Kivy.
|
||||
|
||||
.. include:: philosophy.rst
|
||||
.. include:: guide-index.rst
|
||||
.. include:: api-index.rst
|
||||
|
||||
|
|
|
@ -0,0 +1,93 @@
|
|||
Philosophy
|
||||
==========
|
||||
|
||||
In case you are wondering what Kivy is all about and sets it apart from
|
||||
different solutions, this document is for you.
|
||||
|
||||
Why bother?
|
||||
-----------
|
||||
|
||||
Why would you want to use Kivy? After all, there is many a great toolkit
|
||||
(or framework, or platform) available out there -- for free. Qt and Flash,
|
||||
to just name two good choices for application development, and many of
|
||||
these numerous solutions already support Multi-Touch.
|
||||
So what is it that makes Kivy special and worth using?
|
||||
|
||||
|
||||
* **Fresh**:
|
||||
Kivy is made for today and tomorrow. Novel input
|
||||
methods such as Multi-Touch become increasingly
|
||||
important. We created Kivy from scratch, specifically
|
||||
for this kind of interaction. That means we were able
|
||||
to rethink many things in terms of human computer
|
||||
interaction where older (not saying 'outdated'; rather
|
||||
'well-established') toolkits carry their legacy, which
|
||||
is often a burden. We're not trying to force this new
|
||||
approach to using a computer into the corset of
|
||||
existing models (say single-pointer mouse interaction).
|
||||
We want to let it flourish and let you explore the
|
||||
possibilities.
|
||||
*This* is what really sets Kivy apart.
|
||||
|
||||
* **Fast**:
|
||||
Kivy is fast. This applies to both: *application
|
||||
development* and *application execution* speeds. We have
|
||||
optimized Kivy in many ways. We implement time-critical
|
||||
functionality on the *C level* to leverage the power of
|
||||
existing compilers. More importantly, we also use
|
||||
*intelligent algorithms* to minimize costly operations.
|
||||
Most importantly, we use the *GPU* wherever it makes
|
||||
sense in our context. The computational power of
|
||||
today's graphics cards surpasses that of today's CPUs by
|
||||
far for some tasks and algorithms, especially drawing.
|
||||
That's why we try to let the GPU do as much of the work
|
||||
as possible, thus increasing performance considerably.
|
||||
|
||||
* **Flexible**:
|
||||
Kivy is flexible. This means it can be run on *a variety of
|
||||
different devices*, including Android powered
|
||||
smartphones and tablets. We support *all major
|
||||
operating systems* (Windows, Linux, OS X).
|
||||
This also means that Kivy's fast-paced development
|
||||
allows it to *adapt to new technologies quickly*. More
|
||||
than once have we added support for new external
|
||||
devices and software protocols; sometimes even before
|
||||
they were released.
|
||||
Lastly, Kivy is also flexible in that it is possible
|
||||
to use it in combination with a great number of different
|
||||
third-party solutions. For example, on Windows we
|
||||
support WM_TOUCH, which means that any device that has
|
||||
Windows 7 Pen & Touch drivers will *just work* with
|
||||
Kivy. On OS X you can use Apple's Multi-Touch capable
|
||||
devices, such as trackpads and mice. On Linux, you
|
||||
can use HID kernel input events.
|
||||
In addition to that, we support TUIO and a number of
|
||||
other input sources.
|
||||
|
||||
* **Focused**:
|
||||
Kivy is focused. You can write a simple application
|
||||
with a few lines of code. Kivy programs are created by
|
||||
using the *Python* programming language, which is
|
||||
incredibly versatile, powerful yet easy to use.
|
||||
In addition, we created our own description language
|
||||
for creating sophisticated user interfaces. This
|
||||
language allows you to set up, connect and arrange your
|
||||
application elements quickly.
|
||||
We feel that allowing you to focus on the essence of
|
||||
your application is more important than forcing you to
|
||||
fiddle with compiler settings. We took that burden off
|
||||
your shoulders.
|
||||
|
||||
* **Funded**:
|
||||
Kivy is actively developed by professionals in their field.
|
||||
Kivy is a community-influenced, professionally
|
||||
developed and commercially backed solution. Some of
|
||||
our core developers develop Kivy for a living.
|
||||
Kivy is here to stay. It's not a small, vanishing student
|
||||
project.
|
||||
|
||||
* **Free**:
|
||||
Kivy is free to use. You don't have to pay for it. You
|
||||
don't even have to pay for it if you're making money out
|
||||
of selling an application that uses Kivy.
|
||||
|
Loading…
Reference in New Issue