প্রকল্প সম্পর্কে

klb (klua) হলো এমবেডেড ডিভাইসের জন্য একটি Lua প্রোগ্রামিং সলিউশন। এর মূল নকশা হলো: বিজনেস লজিক Lua-তে লেখা হয় এবং C ভাষা এক্সটেনশন ও কাটিংয়ের দায়িত্ব পালন করে। এতে কো-রুটিন, 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 (Windows ডেস্কটপ Lua হোস্ট, SDL-এর উপর ভিত্তি করে) এবং pubfw (পাবলিক ফ্রেমওয়ার্ক)। এর লাইসেন্স হলো LGPL-3.0।