Modules
KVision consists of both required and optional functionality. Modules can be added as dependencies in build.gradle.kts
file.
All modules which include CSS stylesheets require explicit initialization. This also applies to the core module. This initialization ensures a predictable order in which all styles will be applied. The initialization is performed by adding dedicated module objects as parameters to the startApplication()
function.
Some modules include more than one, optional initializers. E.g. kvision-tabulator
module includes mandatory TabulatorModule
but also TabulatorCssBootstrapModule
, TabulatorCssBulmaModule
, TabulatorCssMaterializeModule
, TabulatorCssMidnightModule
, TabulatorCssModernModule
, TabulatorCssSemanticModule
, TabulatorCssSimpleModule
and TabulatorCssStandardModule
for all CSS styles supported by the Tabulator component.
This is the current list of available modules.
Module
Description
kvision
Core module required for all applications.
Bootstrap based components.
Can be omitted for applications, which use only the core functionality of the framework.
See Theming chapter for more information.
kvision-bootstrap-upload
Bootstrap based upload form component.
kvision-bootstrap-icons
Bootstrap Icons support.
kvision-datetime
Date and time picker form components.
kvision-tom-select
Select and typeahead (autocomplete) components based on Tom Select library.
Font Awesome support.
Handlebars.js templates support for text components.
Internationalization support.
kvision-imask
Text input mask support powered by Imask.js
kvision-richtext
Rich text form component.
kvision-chart
Chart component.
Tabulator component.
kvision-pace
Pace automatic page loader.
kvision-ballast
Integration with Ballast state management framework
ReduxKotlin state container.
See Using Redux chapter for more information.
Support for using React components in KVision applications.
kvision-maps
A basic module with the Maps
component, based on Leaflet library.
PR welcomed!
kvision-material
Material Web based components.
kvision-toastify
Toast messages.
kvision-print
Printing support with Print.js library.
kvision-routing-navigo
Routing module based on Navigo 7 library.
Routing module based on Navigo 8+ library.
kvision-routing-ballast
Routing module based on Ballast framework.
Onsen UI mobile web components.
jQuery bindings, events and animations.
Configurable REST/HTTP client.
State bindings and observable data structures.
kvision-state-flow
Extensions for Kotlin coroutines Flow
, StateFlow
and SharedFlow
.
Kotlin language bindings for Apache Cordova core API.
See Building with Apache Cordova chapter for more information.
Kotlin language bindings for Electron API.
See Building with Electron chapter for more information.
Select form component tailored for full-stack applications.
kvision-tom-select-remote
Select and typeahead (autocomplete) form components tailored for full-stack applications.
Tabulator component tailored for full-stack applications.
kvision-common-annotations
Compiler plugin annotations for full-stack applications. See: Full Stack Development Guide​
kvision-common-types
KVision common module for full-stack applications, with types definitions.
See: Full Stack Development Guide​
kvision-common-remote
KVision common module for full-stack applications, with remote services definitions.
kvision-server-ktor
Ktor server-side connectivity module for full-stack applications.
kvision-server-jooby
Jooby server-side connectivity module for full-stack applications.
kvision-server-spring-boot
Spring Boot server-side connectivity module for full-stack applications.
kvision-server-javalin
Javalin server-side connectivity module for full-stack applications.
kvision-server-vertx
Vert.x server-side connectivity module for full-stack applications.
kvision-server-micronaut
Micronaut server-side connectivity module for full-stack applications.
Last updated