Home

a universal JavaScript framework

with a coherent set of individual components

Website

DOM, Events, Templating

A cross-browser DOM manipulation library to enhance websites with a rich user experience.

Features

  • Browser abstraction
  • DOM manipulation
  • Events
  • Templating
  • Animation
            q.create("

") .setHtml("Hello") .setStyle("color", "blue") .on("click", function() { alert("click") }) .appendTo("#container");

Mobile

iOS, Android, Web

Create mobile apps that run on all major mobile operating systems, without writing any HTML.

Features

  • Pages
  • Navigation
  • Forms
  • Layouting
  • Theming
              var manager = new qx.ui.mobile.page.Manager();
              var page = new qx.ui.mobile.page.NavigationPage();
              page.setTitle("Hello World");
              page.addListener("initialize", function() {
                var button = new qx.ui.mobile.form.Button();
                page.getContent().add(button);
                button.addListener("tap", function() {
                  alert("Hello World");
                }, this);
              },this);
              manager.addDetail(page);
              page.show();
            

Desktop

Single page applications

Create desktop oriented applications. Features a rich and extendable set of widgets. No HTML/CSS knowledge required.

Features

  • Windows, Tabs, …
  • Forms, Lists, Trees, …
  • Toolbars, Menus, …
  • Layouting
  • Theming
              var button = new qx.ui.form.Button("Button");
              var doc = this.getRoot();

              this.getRoot().add(button, {
                left: 100,
                top: 50
              });

              button.addListener("execute", function(evt) {
                alert("Hello World!");
              });
            

Server

Node.js & Rhino

Use the same OOP pattern known from the client side, reuse code and generate files you can deploy in your server environment.

Features

  • Classes, mixins, interfaces
  • Properties
  • Events
  • Single Value Binding
              var qx = require("qx");
              qx.Class.define("Monkey", {
                extend: Animal,
                properties : {
                  legs : { init: 4 }
                },
                members: {}
              });

              var monkey = new Monkey();
              monkey.getLegs();
            

about

qooxdoo is a universal JavaScript framework with a coherent set of individual components and a powerful toolchain. It is open source under liberal licenses, and supported by one of the world's leading web hosts, 1&1.

Universal

With qooxdoo you build rich, interactive applications, native-like apps for mobile devices, light-weight single-page oriented web applications or even applications to run outside the browser.

Coherent

No matter what target platform you choose – at its core, all variants of qooxdoo use the same object-oriented programming model, found in the Core component. This ensures consistency across projects and facilitates code reusage.

Powerful

qooxdoo comes with a set of powerful tools that help you develop advanced JavaScript applications.

More

Shared components

Core

Enhances JavaScript with classes, interfaces and mixins.
Getting Started Documentation

Tooling

Command line and browser based tools to create and maintain qooxdoo applications. Part of the SDK.
Getting Started Documentation