mirror of
https://github.com/lvgl/lvgl.git
synced 2025-01-28 07:03:00 +08:00
bc9bcaa6b7
Co-authored-by: Gabor Kiss-Vamosi <kisvegabor@gmail.com>
134 lines
5.3 KiB
ReStructuredText
134 lines
5.3 KiB
ReStructuredText
==========
|
||
JavaScript
|
||
==========
|
||
|
||
With `lv_binding_js <https://github.com/lvgl/lv_binding_js>`__ you can
|
||
write lvgl with JavaScript.
|
||
|
||
It uses React's virtual DOM concept to manipulate lvgl UI components,
|
||
providing a familiar React-like experience to users.
|
||
|
||
**Code**
|
||
|
||
**Code Running on Real Device**
|
||
|
||
Table of Contents
|
||
-----------------
|
||
|
||
- `Features <#features>`__
|
||
- `Demo <#demo>`__
|
||
- `Building <#building>`__
|
||
- `Components <#components>`__
|
||
- `Font <#font>`__
|
||
- `Animation <#animation>`__
|
||
- `Style <#style>`__
|
||
- `JSAPI <#jsapi>`__
|
||
- `Thanks <#thanks>`__
|
||
|
||
Features
|
||
--------
|
||
|
||
- Support all lvgl built-in components
|
||
- Fully support lvgl flex and grid style
|
||
- support most lvgl style,just write like html5 css
|
||
- support dynamic load image
|
||
- Fully support lvgl animation
|
||
|
||
Demo
|
||
----
|
||
|
||
See the
|
||
`demo <https://github.com/lvgl/lv_binding_js/tree/master/demo>`__ folder
|
||
|
||
Building
|
||
--------
|
||
|
||
The following are developer notes on how to build lvgljs on your native
|
||
platform. They are not complete guides, but include notes on the
|
||
necessary libraries, compile flags, etc.
|
||
|
||
lvgljs
|
||
~~~~~~
|
||
|
||
- `ubuntu build Notes for sdl
|
||
simulator <https://github.com/lvgl/lv_binding_js/blob/master/doc/build/build-ubuntu-arm.md>`__
|
||
- `macos x86 build Notes for sdl
|
||
simulator <https://github.com/lvgl/lv_binding_js/blob/master/doc/build/build-macos-x86-simulator.md>`__
|
||
- `ubuntu build Notes for platform
|
||
arm <https://github.com/lvgl/lv_binding_js/blob/master/doc/build/build-ubuntu-x86-simualtor.md>`__
|
||
|
||
JS Bundle
|
||
~~~~~~~~~
|
||
|
||
- `JS Bundle build
|
||
Notes <https://github.com/lvgl/lv_binding_js/blob/master/doc/build/js-bundle.md>`__
|
||
|
||
Components
|
||
----------
|
||
|
||
- `View <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/View.md>`__
|
||
- `Image <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Image.md>`__
|
||
- `Button <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Button.md>`__
|
||
- `Text <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Text.md>`__
|
||
- `Input <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Input.md>`__
|
||
- `Textarea <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Textarea.md>`__
|
||
- `Switch <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Switch.md>`__
|
||
- `Checkbox <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Checkbox.md>`__
|
||
- `Dropdownlist <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Dropdownlist.md>`__
|
||
- `ProgressBar <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/ProgressBar.md>`__
|
||
- `Line <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Line.md>`__
|
||
- `Roller <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Roller.md>`__
|
||
- `Keyboard <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Keyboard.md>`__
|
||
- `Calendar <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Calendar.md>`__
|
||
- `Chart <https://github.com/lvgl/lv_binding_js/blob/master/doc/component/Chart.md>`__
|
||
|
||
Font
|
||
----
|
||
|
||
`Buitin-Symbol <https://github.com/lvgl/lv_binding_js/blob/master/doc/Symbol/symbol.md>`__
|
||
|
||
Animation
|
||
---------
|
||
|
||
`Animation <https://github.com/lvgl/lv_binding_js/blob/master/doc/animate/animate.md>`__
|
||
|
||
Style
|
||
-----
|
||
|
||
.. include::https://github.com/lvgl/lv_binding_js/blob/master/doc/style/position-size-layout.md
|
||
|
||
- `position-size-layout <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/position-size-layout.md>`__
|
||
- `boxing-model <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/boxing-model.md>`__
|
||
- `color <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/color.md>`__
|
||
- `flex <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/flex.md>`__
|
||
- `grid <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/grid.md>`__
|
||
- `font <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/font.md>`__
|
||
- `opacity <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/opacity.md>`__
|
||
- `display <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/display.md>`__
|
||
- `background <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/background.md>`__
|
||
- `scroll <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/scroll.md>`__
|
||
- `shadow <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/shadow.md>`__
|
||
- `recolor <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/recolor.md>`__
|
||
- `line <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/line.md>`__
|
||
- `transition <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/transition.md>`__
|
||
- `transform <https://github.com/lvgl/lv_binding_js/blob/master/doc/style/transform.md>`__
|
||
|
||
JSAPI
|
||
-----
|
||
|
||
- `network <https://github.com/lvgl/lv_binding_js/blob/master/doc/jsapi/network.md>`__
|
||
- `filesystem <https://github.com/lvgl/lv_binding_js/blob/master/doc/jsapi/fs.md>`__
|
||
- `dimension <https://github.com/lvgl/lv_binding_js/blob/master/doc/jsapi/dimension.md>`__
|
||
|
||
Thanks
|
||
------
|
||
|
||
lvgljs depends on following excellent work
|
||
|
||
`lvgl <https://github.com/lvgl/lvgl>`__: Create beautiful UIs for any
|
||
MCU, MPU and display type `QuickJS <https://bellard.org/quickjs/>`__:
|
||
JavaScript engine `libuv <https://github.com/libuv/libuv>`__: platform
|
||
abstraction layer `curl <https://github.com/curl/curl>`__: HTTP client
|
||
`txiki.js <https://github.com/saghul/txiki.js>`__: Tiny JavaScript
|
||
runtime
|