Вы здесь:

Примеры KWeb:

Hello World
Modal dialog
Todo list

KWeb - Kotlin библиотека для построения WEB интерфейса. Ниже описаны короткие примеры из документации:

Hello World

В бесконечном цикле, с периодом в 1 секунду, выводятся сообщения "Hello world 1,2,...".

hello_screen

Код:

fun main(args: Array<div>) {
    helloWorld()
}

fun helloWorld() {
    Kweb(port = 16097) {
        doc.body.new {
            h1().text("Hello Worlds!") // add html tag

            GlobalScope.launch {
                try {
                    var x = 0
                    while (true) {
                        x += 1
                        li().text("Hello World $x!") // add html tag

                        val callbackId = Random.nextInt()

                        withTimeout(2000){
                            val waiter = CompletableFuture<pre>()
                            GlobalScope.launch(Dispatchers.IO){
                                browser.executeWithCallback("callbackWs($callbackId, {alive: 1});", callbackId) {
                                    waiter.complete(true)
                                }
                            }
                            waiter.await()
                        }
                        delay(500)
                    }
                }
                catch (ex:Exception){
                    logger.info(ex.message)
                }
                finally {
                    logger.info("I'm gone")
                }
            }
        }
    }
}

Java 17.

Modal dialog

screen_start

Открытое диалоговое окно:

screen_dialog

screen_dialog

Код: https://github.com/cherepakhin/kweb_modal_dialog

Todo list

screen_dialog

Исходный код: https://github.com/cherepakhin/kweb_todo_list
Основной файл: https://github.com/cherepakhin/kweb_todo_list/blob/master/src/main/kotlin/TodoApp.kt

Ссылки

Kweb — Облегченный веб-фреймворк Kotlin для backend-разработчиков
https://github.com/kwebio/kweb-demos
https://github.com/cherepakhin/kweb_helloworld