Welcome to the Fiz Website!

Fiz is a new server-side framework for developing interactive Web applications. It is being developed by a research group at Stanford University led by John Ousterhout, and it is freely available in open source form. Fiz's goal is to make it much easier to create highly-interactive Web applications. It does this by providing a framework where you create Web pages by assembling pre-existing components rather than by writing a lot of detailed HTML and CSS. The components handle most of the details for you, so you can concentrate on the important behaviors of your application. Fiz comes with a collection of built-in components, and you can also develop additional components of your own and share them with other people. As more and more Fiz components become available, it will get easier and easier to build exciting applications.

Here are some reasons why Fiz might be the best framework for your next Web application:

  • Fiz's component based approach allows you to create applications much more quickly than other frameworks. Almost all other Web frameworks are based on templates, which seem appealing at first but lure you into a tedious approach where you have to write a lot of detailed HTML. With templates it's hard to reuse code you've written previously; every page for every application gets written from scratch. The Fiz component approach hides details much more effectively than templates and makes it easier to reuse code. (Truth in advertising: Fiz also provides a template mechanism, but it's intended primarily for use within components, not by application developers.)
  • The built-in components provide powerful interactions out-of-the-box, such as a calendar-picker form element and a tree browser. Many of these components involve Javascript or Ajax, but those details are handled entirely within the components.
  • The Fiz components automatically deal with some of the most pernicious Web security threats. For example, Fiz's form and Ajax components automatically prevent CSRF (cross-site request forgery) attacks.
  • Fiz contains powerful Ajax support built in from the very beginning, not tacked on as an afterthought. You can write most of your code without worrying about the distinction between an Ajax request and a normal HTML request; Fiz handles the differences automatically.
  • The Fiz Website makes it easy to create Fiz extensions and share them with the rest of the Fiz community. Downloading an extension and incorporating it into an application is a one-line command.
  • Fiz includes a mechanism called data managers that makes it easy to incorporate data from a variety of sources, not just relational databases. Fiz includes several built-in data managers, and it's easy to write new ones that will work with all of the other Fiz components.
  • Fiz includes a templating mechanism for CSS that makes it much easier to handle style attributes that are used in many places. You can change a common attribute such as a border color in one place, and Fiz will propagate it to all of the CSS styles that use it.
  • Fiz includes a powerful layout mechanism that allows you to define arrangements of page elements separately from the elements themselves.
  • Fiz is open-source with an unrestricted license (no GPL, no viral impact). You can use any portion or all of Fiz for any purpose you wish, including commercial products.
  • Fiz is written in Java, which makes your applications run faster and gives you the benefits of stronger typing.
  • Fiz includes a unit testing framework that allows you to write unit tests for Javascript code that will run on the browser as well as Java code running on the server.