fritz2 alternatives and similar libraries
Based on the "Web" category.
Alternatively, view fritz2 alternatives based on common mentions on social networks and blogs.
-
ktor
Framework for quickly creating connected applications in Kotlin with minimal effort -
javalin
A simple and modern Java and Kotlin web framework [Moved to: https://github.com/javalin/javalin] -
apollo-android
:robot: A strongly-typed, caching GraphQL client for the JVM, Android, and Kotlin multiplatform. -
http4k
The Functional toolkit for Kotlin HTTP applications. http4k provides a simple and uniform way to serve, consume, and test HTTP services. -
spark-kotlin
A Spark DSL in idiomatic kotlin // dependency: com.sparkjava:spark-kotlin:1.0.0-alpha -
skrape.it
A Kotlin-based testing/scraping/parsing library providing the ability to analyze and extract data from HTML (server & client-side rendered). It places particular emphasis on ease of use and a high level of readability by providing an intuitive DSL. It aims to be a testing lib, but can also be used to scrape websites in a convenient fashion. -
firefly
Firefly is an asynchronous web framework for rapid development of high-performance web application. -
hexagon
Hexagon is a microservices toolkit written in Kotlin. Its purpose is to ease the building of services (Web applications or APIs) that run inside a cloud platform. -
A pure Kotlin, UI framework
A pure Kotlin UI framework for the Web (and desktop). -
vaadin-on-kotlin
Writing full-stack statically-typed web apps on JVM at its simplest -
alpas
🚀 The Rapid and Delightful Kotlin Web Framework. Easy, elegant, and productive! -
ShapeShift️
A Kotlin/Java library for intelligent object mapping and conversion between objects. -
lambda-kotlin-request-router
A REST request routing layer for AWS lambda handlers written in Kotlin -
tekniq
A framework designed around Kotlin providing Restful HTTP Client, JDBC DSL, Loading Cache, Configurations, Validations, and more -
Pellet
An opinionated, Kotlin-first web framework that helps you write fast, concise, and correct backend services 🚀. -
bootique-kotlin
Provides extension functions and features for smooth development with Bootique and Kotlin. -
Zeko-RestApi
Asynchronous web framework for Kotlin. Create REST APIs in Kotlin easily with automatic Swagger/OpenAPI doc generation -
komock
KoMock - Simple HTTP/Consul/SpringConfig http server framework written in Kotlin. Wiremock use cases -
voyager-server-spring-boot-starter
Easily create REST endpoints with permissions (access control level) and hooks includeded
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of fritz2 or a related project?
README
fritz2 is an extremely lightweight, well-performing, independent library to build reactive web apps in Kotlin heavily depending on coroutines and flows.
fritz2 includes an intuitive way to build and render html-elements and styles using a type-safe dsl. You can easily create lightweight reactive html-components that are bound to an underlying model and automatically change whenever the model data changes:
val model = storeOf("init value")
render {
div("some-css-class") {
input {
value(model.data)
changes.values() handledBy model.update
}
p {
+"model value = "
model.data.renderText()
}
}
}
fritz2 implements precise data binding. This means that when parts of your data model change, exactly those and only those DOM-nodes depending on the changed parts will automatically change as well. No intermediate layer (like a virtual DOM) is needed. fritz2 requires no additional methods to decide which parts of your component have to be re-rendered:
Utilizing Kotlin's multiplatform-abilities, you'll write the code of your data classes only once and use it on your client and server (i.e. in a SpringBoot- or Ktor-Backend). This is also true for your model-validation-code, which can quickly become far more complex than your data model.
Key Features
- easy reactive one- and two-way-databinding (even for lists and deep nested structures)
- hassle-free redux-like state-handling
- model-validation and message handling
integrated styling-dsl(outdated)component-library(outdated, will be replaced by a headless approach)- routing (for SPAs, hash-based)
- backend-repositories (Rest APIs, WebSockets, LocalStorage, etc.)
- history / undo
- processing state ("spinning wheel")
- easy to learn
- documentation
- examples i.e. implementing the specification of TodoMVC
How to try it?
- Take a look at our hosted examples
- Or set up a new project on your own, following our documentation
Overall Goals
- staying lightweight (a few hundred lines of code for the core)
- keeping dependencies as low as possible (zero up to now!)
- generating elements, attributes, events for html from specification (w3c, mozilla, ...)
- make it as easy as possible to write reactive pwas in pure kotlin
Inspiration
fritz2 is hugely inspired by the great Binding.scala. Later we discovered that a lot of those concepts are described independently in Meiosis.
Leave us a star...
If you like the idea of a lightweight pure Kotlin implementation for building reactive web apps, please give us a star on github. Thank you.