Embedding of scripting into applications


Kross is a scripting bridge to embed scripting functionality into an application. It supports QtScript as a scripting interpreter backend.


The core of Kross provides the framework to deal transparently with interpreter-backends and offers abstract functionality to deal with scripts.

The Kross::Manager class is a singleton that provides the main entry point to deal with the Kross Scripting Framework.

The Kross::Interpreter class is the base for interpreter implementations. Each scripting backend needs to inherit its own interpreter and implement it. The Kross::InterpreterInfo class provides abstract information about a Interpreter before the interpreter-backend itself is loaded.

The Kross::Action class is an abstract container to deal with scripts like a single standalone script file. Each action holds a reference to by the matching Kross::Interpreter created Kross::Script instance.

The Kross::ActionCollectionProxyModel class implements a QSortFilterProxyModel for a Kross::ActionCollectionModel instance which implements QAbstractItemModel to provide a model for views on a Kross::ActionCollection instance.

The Kross::ActionCollection class manages collections of Kross::Action instances.


Kross is able to optional dynamic load modules which provide then additional functionality for scripts.

Console Application

The Kross console application provides an executable application to run by Kross supported scripts from within the command line:

kross myscript.js


Currently, the only backend is a JavaScript backend powered by the QtScript library (which is part of Qt).

This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Tue Sep 26 2023 04:07:11 by doxygen 1.8.17 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.