ZKは、オープンソースのAjaxフレームワークの名前。
ライセンスはGPL。2011年7月時点で、最新バージョンは5.0.7 。
ZULファイル(拡張子が.zulのXML)で、ユーザーインターフェイス(画面表示)の部分を記述して、内部の動作はJavaで記述する。
実行時には、ユーザーインターフェイスの部分はJavascriptに変換されて、クライアント側のブラウザで実行される。
内部の動作(ビジネスロジック部分)は、サーブレットとしてサーバー側で実行される。
ZKは、配置したコンポーネントに対するマウスのクリックやドラッグ&ドロップなどの
イベントを処理する、イベント駆動型プログラミングでアプリケーションを開発する。
XULコンポーネントには、ラベル、ボタン、チェックボックス、テキスト入力エリア、データグリッド、ツリービューなどがあり、
OS本体やデスクトップアプリと同じような操作性の、ブラウザ上で動くウェブアプリケーションを作成できる。