Skip to content

Latest commit

 

History

History
73 lines (67 loc) · 17.1 KB

modules.md

File metadata and controls

73 lines (67 loc) · 17.1 KB

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.

fun main() {
    startApplication(
        ::App,
        module.hot,
        BootstrapModule,
        BootstrapCssModule,
        FontAwesomeModule,
        TomSelectModule,
        DatetimeModule,
        BootstrapUploadModule,
        CoreModule
    )
}

{% hint style="info" %} 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. {% endhint %}

This is the current list of available modules.

Module Description
kvision Core module required for all applications.
kvision-bootstrap

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.
kvision-fontawesome Font Awesome support.
kvision-handlebars Handlebars.js templates support for text components.
kvision-i18n Internationalization support.
kvision-imask Text input mask support powered by Imask.js
kvision-richtext Rich text form component.
kvision-chart Chart component.
kvision-tabulator Tabulator component.
kvision-pace Pace automatic page loader.
kvision-ballast Integration with Ballast state management framework
kvision-redux-kotlin

ReduxKotlin state container.

See Using Redux chapter for more information.

kvision-react Support for using React components in KVision applications.
kvision-maps

A basic module with the Maps component, based on Leaflet library.

PR welcomed!

kvision-toastify Toast messages.
kvision-print Printing support with Print.js library.
kvision-routing-navigo Routing module based on Navigo 7 library.
kvision-routing-navigo-ng Routing module based on Navigo 8+ library.
kvision-routing-ballast Routing module based on Ballast framework.
kvision-onsenui Onsen UI mobile web components.
kvision-jquery jQuery bindings, events and animations.
kvision-rest Configurable REST/HTTP client.
kvision-state State bindings and observable data structures.
kvision-state-flow Extensions for Kotlin coroutines Flow, StateFlow and SharedFlow.
kvision-cordova

Kotlin language bindings for Apache Cordova core API.

See Building with Apache Cordova chapter for more information.

kvision-electron

Kotlin language bindings for Electron API.

See Building with Electron chapter for more information.

kvision-select-remote Select form component tailored for full-stack applications.
kvision-tom-select-remote Select and typeahead (autocomplete) form components tailored for full-stack applications.
kvision-tabulator-remote 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.

See: Full Stack Development Guide

kvision-server-ktor

Ktor server-side connectivity module for full-stack applications.

See: Full Stack Development Guide

kvision-server-ktor-koin

Ktor with Koin server-side connectivity module for full-stack applications.

See: Full Stack Development Guide

kvision-server-jooby

Jooby server-side connectivity module for full-stack applications.

See: Full Stack Development Guide

kvision-server-spring-boot

Spring Boot server-side connectivity module for full-stack applications.

See: Full Stack Development Guide

kvision-server-javalin

Javalin server-side connectivity module for full-stack applications.

See: Full Stack Development Guide

kvision-server-vertx

Vert.x server-side connectivity module for full-stack applications.

See: Full Stack Development Guide

kvision-server-micronaut

Micronaut server-side connectivity module for full-stack applications.

See: Full Stack Development Guide