docs/src/introduction/index.rst
.. _introduction:
LVGL (Light and Versatile Graphics Library) is a free and open-source C graphics library providing everything you need to create an embedded GUI with easy-to-use graphical elements, beautiful visual effects, and a low memory footprint.
LVGL provides the "GUI engine" that handles all end-user interaction with your application, including not only drawing the contents of the display and accepting user input and turning it into events "catchable" by the application, but also providing 30+ built-in widgets, 100+ style properties, scrolling, animations, advanced software rendering, built-in GPU support from MCUs to OpenGL, and much more. The combination of these enable you to efficiently develop UIs without having to re-invent the wheel.
Using LVGL in a firmware project effectively reduces the GUI-developer's job to defining the GUI and furnishing it with appropriate event hooks to carry out the valuable work of the GUI.
LVGL can use GUIs that are 100% defined in C code you write (for which any updates to the GUI require modifying that C code and re-flashing the firmware), or GUI definitions provided in XML files (for which updates to the GUI require only modifying the XML files that define the GUI for that firmware), or any combination of these two that suits your project.
.. _key_features:
Key Features
buttons, charts, lists, sliders, images <widgets>, etc.OS <threading>, external memory and :ref:GPU <draw> are supported but not requiredSimulator <simulator> to start embedded GUI design on a PC without embedded hardwareMicroPython.. toctree:: :maxdepth: 2
requirements
license
faq
repo