Architecture
KaiOS Product is decoupled into two components : Core and App Profile.
Core
The underlying platform that consists of the Web application runtime, i.e. Gecko, plus the hardware adaptation layer and a few other supporting module.
App Profile
A collection of built-in web apps, which represents the user interfacing functions of KaiOS for a given device form factor.
Technologies
KaiOS apps are based on web technologies โ HTML, CSS, and JavaScript and are run by Gecko runtime. If you have written a web page you already know the basics.
Rendering is done by parsing HTML/CSS and painted using graphic APIs. JavaScript are executed by the JS engine SpiderMonkey and connected to C++ components by XPConnect and WebIDL bindings. Applications and the core process communicate only through IPC protocols defined by IPDL.
Additionally a set of core components including file and memory management, threads and data structures etc. are provided through the XPCOM component object model.