Echo is a platform for building web-based applications that approach the capabilities of rich clients. The applications are developed using a component-oriented and event-driven API, eliminating the need to deal with the "page-based" nature of browsers. To the developer, Echo works just like a user interface toolkit.  The latest iteration, Echo3, features the ability to write applications in either server-side Java or client-side JavaScript. Server-side applications run in any Java Servlet Container and do not require developer knowledge of HTML, HTTP, or JavaScript. Client-side JavaScript-based applications do not require any server at all, but can of course communicate with one via XML or JSON over HTTP. Cross-platform AJAX technology is used for rendering, and no browser plugins are required.  Echo is open-source software, dual-licensed under the Mozilla Public License and LGPL.