All Projects → rjaros → Kvision

rjaros / Kvision

Licence: mit
Object oriented web framework for Kotlin/JS

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Kvision

Sifrr
⚡️ Set of tiny, independent libraries for creating modern and fast webapps with javascript/typescript
Stars: ✭ 174 (-73.56%)
Mutual labels:  framework, fullstack, frontend
Korolev
Single Page Applications running on the server side.
Stars: ✭ 510 (-22.49%)
Mutual labels:  framework, fullstack, frontend
Cyclow
A reactive frontend framework for JavaScript
Stars: ✭ 105 (-84.04%)
Mutual labels:  reactive, framework, frontend
Fritz2
Easily build reactive web-apps in Kotlin based on flows and coroutines.
Stars: ✭ 308 (-53.19%)
Mutual labels:  reactive, framework, frontend
Vue.py
Pythonic Vue.js
Stars: ✭ 223 (-66.11%)
Mutual labels:  reactive, framework, frontend
Vertx Jooq
A jOOQ-CodeGenerator to create vertx-ified DAOs and POJOs.
Stars: ✭ 299 (-54.56%)
Mutual labels:  reactive, vertx
Vuefront
VueFront Core. Turn your old-fashioned CMS website in to a SPA & PWA in 5 minutes
Stars: ✭ 316 (-51.98%)
Mutual labels:  framework, frontend
Hooks
FullStack | Zero Api | Using "React Hooks" to develop the back-end | Vite
Stars: ✭ 367 (-44.22%)
Mutual labels:  fullstack, frontend
Reactive Interaction Gateway
Create low-latency, interactive user experiences for stateless microservices.
Stars: ✭ 465 (-29.33%)
Mutual labels:  reactive, frontend
Front End Web Development Resources
This repository contains content which will be helpful in your journey as a front-end Web Developer
Stars: ✭ 3,452 (+424.62%)
Mutual labels:  framework, frontend
Learn
How do you achieve your career objectives? Complete career paths with amazing Cloud, Full Stack and Microservice Courses and Videos from in28Minutes
Stars: ✭ 447 (-32.07%)
Mutual labels:  spring-boot, fullstack
Servicetalk
A networking framework that evolves with your application
Stars: ✭ 656 (-0.3%)
Mutual labels:  reactive, framework
Vertx Examples
Vert.x examples
Stars: ✭ 3,202 (+386.63%)
Mutual labels:  reactive, vertx
Djreact
A simple introduction to integrating Django and React.
Stars: ✭ 317 (-51.82%)
Mutual labels:  fullstack, frontend
Mini.css
A minimal, responsive, style-agnostic CSS framework!
Stars: ✭ 2,938 (+346.5%)
Mutual labels:  framework, frontend
Framework
A modular front-end framework - inspired by the server-side and Web Components.
Stars: ✭ 448 (-31.91%)
Mutual labels:  framework, frontend
Vertx Guide For Java Devs
Vert.x 3 guide for Java developers
Stars: ✭ 500 (-24.01%)
Mutual labels:  reactive, vertx
Spring Data R2dbc
Provide support to increase developer productivity in Java when using Reactive Relational Database Connectivity. Uses familiar Spring concepts such as a DatabaseClient for core API usage and lightweight repository style data access.
Stars: ✭ 534 (-18.84%)
Mutual labels:  reactive, framework
Frint
Modular JavaScript framework for building scalable and reactive applications
Stars: ✭ 608 (-7.6%)
Mutual labels:  reactive, framework
Choo Handbook
🚂✋📖 - Learn the choo framework through a set of exercises
Stars: ✭ 266 (-59.57%)
Mutual labels:  framework, frontend

KVision Logo

KVision

Object oriented web framework for Kotlin/JS.

https://kvision.io

CI API IR License: MIT Slack

KVision allows you to build modern web applications with the Kotlin language, without any use of HTML, CSS or JavaScript. It gives you a rich hierarchy of ready to use GUI components, which can be used as builder blocks for the application UI.

KVision fully supports both reactive and imperative programming models. It gives you everything you may need for the state management of your apps.

KVision contains innovative connectivity interface for Ktor, Jooby, Spring Boot, Javalin, Vert.x and Micronaut frameworks on the server side, which allows to build fullstack applications with shared code for data model and business logic.

KVision is being actively developed. Please create an issue for any bugs or feature requests.

Sample code

class App : Application() {

    val state = ObservableValue("Hello world")

    override fun start() {
        root("root") {
            vPanel {
                h1(state) {
                    +it
                }
                button("Add an exclamation mark").onClick {
                    state.value += "!"
                }
            }
        }
    }
}

Features

Examples and documentation

Ready to explore, rich set of KVision examples is available in the separate project.

See also the complete frontend implementation of RealWorld example application and a fullstack version built with Spring Webflux and R2DBC.

The comprehensive KVision guide is published on GitBook.

The API documentation, generated with new Dokka 1.4, is available at https://rjaros.github.io/kvision/index.html.

You can also look at KVision blog posts at dev.to and you can talk with KVision developers on Kotlin Slack #kvision channel.

Quickstart

Development

  1. Download KVision examples from GitHub:

     git clone https://github.com/rjaros/kvision-examples.git
    
  2. Enter one of the examples directory:

     cd kvision-examples/showcase                        (on Linux)
     cd kvision-examples\showcase                        (on Windows)
    
  3. Run Gradle incremental build with:

     ./gradlew -t run                                    (on Linux)
     gradlew.bat -t run                                  (on Windows)
    
  4. Open http://localhost:3000/ in your browser.

  5. Play with the code and see your changes immediately in the browser.

Production

To build complete application optimized for production run:

    ./gradlew zip                       (on Linux)
    gradlew.bat zip                     (on Windows)

Application package will be saved as build/libs/showcase-1.0.0-SNAPSHOT.zip.

Leave us a star

If you like this project, please give it a star on GitHub. Thank you!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].