As the Web reaching our daily lives, the ability of Web applications to communicate with users become more important than ever. As the Web becoming the default platform for applications, the cost to develop Web applications is losing control. In response to this challenge, ZK is designed to enable Web applications to have both the rich user experiences and the simple programming model. ZK includes an AJAX-based event-driven engine to automate interactivity, and a rich set of XUL-based components. With ZK, you represent your application in feature-rich XUL components, and manipulate these components by listening to events triggered by users, as you did for years in desktop applications. Your users get the same engaged interactivity and responsiveness as a desktop application, while your development remains the same simplicity as that of desktop applications.