README.md

Summary

Maintainability
Test Coverage
# [ZK](http://www.zkoss.org/) [![Build Status](https://github.com/zkoss/zk/workflows/zk-build/badge.svg)](https://github.com/zkoss/zk/actions?query=workflow%3Azk-build) [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.zkoss.zk/zk/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.zkoss.zk/zk) [![Code Climate](https://codeclimate.com/github/zkoss/zk/badges/gpa.svg)](https://codeclimate.com/github/zkoss/zk)
ZK is a highly productive Java framework for building amazing enterprise web
and mobile applications.

## Resources

### Documentation

* [Tutorial](http://books.zkoss.org/wiki/ZK_Getting_Started/Tutorial)
* [ZK Essentials](http://books.zkoss.org/wiki/ZK_Essentials)
* [ZK Developer's Reference](http://books.zkoss.org/wiki/ZK_Developer%27s_Reference)
* [Javadoc API](http://www.zkoss.org/javadoc/latest/zk/)
* [More](http://books.zkoss.org)

### Download

* [Download](http://www.zkoss.org/download/zk/ce)

### License

 * [LGPL](http://www.gnu.org/licenses/lgpl-2.1.html)

## [Product Overview](http://www.zkoss.org/product/zk)

### Simply Java

> ZK is renowned for its "Ajax without JavaScript" approach since 2005,
> enabling developers to build rich internet applications transparently
> without any knowledge of Ajax and JavaScript.

> The client engine and update engine in ZK play the roles of pitcher and
> catcher, rendering Ajax communication transparent to developers. Events
> triggered by users are encapsulated and marshalled to event listeners
> running at the server.

> User interface rendered on browsers are surrogated on the server as
> POJO components, alternation made on the POJO components are reflected
> to the client transparently.

> With programs executed at the server, developers can leverage all the Java
> technologies, such as Java EE and Spring, while back-end data and services
> are readily available.


### Server+client Fusion

> ZK's Server+client Fusion gives developers the freedom to leverage the best
> of both sides.

> The server-centric solution to Ajax brings a productivity boost, robustness,
> and security to Web application development; while client side solutions
> endows Web applications with greater controllability and the ability to
> leverage client side resources.

> ZK marries the benefits of both to bring forth a developer-centric approach
> where developers continue to build large scale enterprise applications with
> all the robustness of Java technologies, but also are offered the flexibility
> to work directly with ZK's jQuery based widgets to further enhance user
> experience.

### Declarative Programming

> ZK User Interface Markup Language (ZUML) makes the design of rich user interfaces
> as simple as authoring HTML pages. ZUML is a variant of XUL inheriting all
> features available to XML, and separates the UI definition from the run-time logic.

> ZUML also allows developers to automate CRUD between UI components and the data
> source with annotations, data binding and MVVM.