Introduction
Last updated
Last updated
is an open source web framework created for language. It allows developers to build modern web applications in Kotlin.
KVision allows you to build modern web applications with the Kotlin language, without any use of HTML, CSS or JavaScript.
KVision's basic design is quite similar to many non-web UI programming libraries including Swing, JavaFX, QT and WinForms.
It gives you a hierarchy of almost 100 ready to use GUI components, which can be used as a builder blocks for the application UI. Hundreds of features are available with easy to learn and consistent API.
sophisticated containers (tabs, stack, dock, grid, horizontal, vertical, flexbox, responsive)
forms with type-safe data model and built-in validation
many different text input components including rich text editor, typeahead and input mask support
buttons, checkboxes, radios and switches
date and time picker
spinner, range and numeric input components
advanced select box with remote data support
file upload with preview and multi-selection
advanced charts
reactive tables
data binding components and observable data sources
navigation bar, toolbar, context menu and offcanvas sidebar
tooltips and popovers
modals including ready to use alerts and confirm dialogs
floating, re-sizable windows
configurable toasts
many HTML components including tables, lists, images, canvas and iframe
theme switcher for dark mode with auto-detection
built-in support for with dark mode switcher
built-in support for templates
built-in support for icons
built-in support for
built-in support for
built-in support for web components
built-in support for components
built-in support for automatic page loader
built-in support for interactive maps
built-in support for printing with library
built-in support for state management framework
KVision fully supports both reactive and imperative programming models. It gives you everything you may need for the state management of your apps. From simple observables to advanced redux stores and bindings to coroutines StateFlow. From simple event callbacks to functional event flows.
KVision is open source and modular. You can create your own modules taking an example from quite a few already existing. Almost all KVision classes are declared as open. With inheritance and composition you can build your own components, with all new features you need in your apps.
KVision is suitable for any kind of projects, including responsive, mobile web applications or even a simple, plain websites.
Type safe DSL builders
Event Flows
Support for jQuery animations end effects
Drag & drop support
Type-safe REST connectivity
Integrated JS router
Compatible with modern browsers (MS Edge, Firefox, Chrome, Safari, Opera)
KVision was designed to be open and flexible. By default it gives you based look & feel. You can also use themes from or you can disable them all and design your application appearance from the scratch, limited only by your own knowledge of CSS.
KVision apps can be integrated with companion library, which allows you to easily create fullstack interfaces for a bunch of popular server side frameworks - , , , , and . This allows you to build fullstack applications with shared code for data model and business logic. Kilua RPC closely integrates the client and the server side of the project with a shared data model and fully type-safe connectivity between both sides (based on automatically generated routings and JSON-RPC endpoints). This architecture is based on Kotlin coroutines, wrapping asynchronous client-server calls into easy-to-read synchronous-like code. With the help of the dedicated Kotlin compiler plugin, based on library, you have to write only essential, boilerplate-free code. This makes KVision fullstack applications very easy to create and maintain.
There is also support for type-safe websocket connections and SSE (server-sent events), based on .
Utilizes fast virtual DOM implementation
Internationalization support based on translations and library.
testing framework support