Об этом проекте

klb (klua) представляет собой решение для программирования на Lua, ориентированное на встраиваемые устройства. Основная концепция дизайна заключается в том, что бизнес-логика пишется на Lua, а язык C отвечает за расширение и裁剪 (оптимизацию). В систему уже интегрированы такие commonly used библиотеки, как корутины, GUI, сеть, cjson/lfs и другие, что позволяет использовать require «из коробки». Способ использования: бизнес-логика реализуется на Lua, функциональные возможности получаются через C-биндинги, такие как require("kco")/require("kgui"), а скриптовые библиотеки для GUI-страниц, net/rtsp и т.д. доступны через require("klbcore.*"). В качестве среды выполнения можно использовать исполняемый файл klua или линковать libklb в процесс продукта. Структура каталогов файлов включает: bin (Lua-скрипты и библиотеки поддержки klbcore), inc (C-заголовочные файлы), src_c (файлы реализации на C, охватывающие оболочку приложения, базовые библиотеки, GUI, память, сеть, платформозависимые части, сторонние библиотеки и т.д.), src_packages (пакеты расширений, например, пакеты элементов управления GUI), proj (файлы проекта VS2015). Сторонние библиотеки включают базовый код ffmpeg, zlib-1.2.11, qrencode-4.1.1. Связанные репозитории той же организации включают: klua_doc (документация), portfs (кроссплатформенная переносимая файловая система), wlua (хост Lua для Windows на базе SDL), pubfw (общий фреймворк). Лицензия — LGPL-3.0.