Qooxdoo JavaScript App

Qooxdoo

by Qooxdoo

A JavaScript framework for applications development
Helps with: JavaScript
Similar to: Flot App jQuery App jQuery Mobile App jQuery OSK App More...
Source Type: Open
License Types:
Supported OS:
Languages: Java Script

What is it all about?

Qooxdoo is a JavaScript client-side framework designed for developing graphical user interfaces for web applications for various platforms.

Key Features

* Qooxdoo support the developing of interactive appliations, native-like apps for mobiles, light-weight single-page oriented web applications and applications to run outside the browser. * Using the programming concept Ajax. * Makes it possible to process user input without reloading the entire web page again. * The source code of the project are free and are available under the EPL, LGPL licenses.


Pricing

Yearly
Monthly
Lifetime
Free
Freemium
Trial With Card
Trial No Card
By Quote

Description

free - see site

Alternatives

View More Alternatives

View Less Alternatives

Product Analysis

JavaScript

Javascript frameworks and libraries

Qooxdoo

Qooxdoo

By Alvie Amar | 8/16/2016 | Product Analysis |Beginners

Qooxdoo is an open source JavaScript framework that has a wide graphical user interface (GUI) toolkit and a high-level client-server communication. It uses Ajax as its main method of application development and is highly object-oriented in terms of programming. It is commonly used in web applications and other interactive applications that may even run outside the browser with the use of its variety of widgets.

 

Qooxdoo’s development was initiated by 1&1 Internet, an active company that supports Open Source Software, and is now LGPL/EPL dual-licensed to allow users to copy, distribute, and modify the software given that the modifications are drawn and licensed for free under the LGPL authorization.



Advantages of Qooxdoo

 

First of all, Qooxdoo programming uses purely JavaScript, which means it does not require HTML, CSS, DOM and other commonly used languages in application development in order to operate. This would save the user a ton of time that could have been spent to learn those languages. Its runtime is faster and easier compared to other Frameworks since Qooxdoo supports an extensive range of JavaScript environments:

 

  • Fully supports the latest browsers including Firefox 4, IE9, Opera, Chrome, and Safari.
  • Mobile browsers (Android, iOS, Windows Phone)
  • JS engines (node.js, Rhino)

 

Qooxdoo is hassle free to run since it does not require plugins such as ActiveX, Flash, Java, Silverlight, and the like. The collection of Qooxdoo devkit has an extremely versatile framework structuring due to its numerous series of platforms. Its core is class-based and is reliant on namespaces. This ignores extended native JavaScript types, thus allowing an easy integration with existing user codes and other libraries while trimming down the number of global variables. Its avant-garde GUI is on par with GUI toolkits in spite of the fact that Qooxdoo only uses JavaScript compared to others.

 

The Qooxdoo system is also something to look out for because it processes user input without having to reload the entire web page over again. It is open-source software which makes it more secure as the code is accessible to everyone allowing the entire internet community to help the user fix bugs without having to wait for the next software update. JavaScript parsers are completely available in Qooxdoo. This allows document generation faster and makes compressing, linking, and deployment of customized applications easier to understand by the users. Qooxdoo is a handy, easy-to-master, highly flexible, cutting-edge framework. Best used for web applications, mobile applications, and interactive applications with the use of JavaScript programming.

 

Qooxdoo key features with Code Snippets

 

One of the assets of Qooxdoo is its multipurpose customizable skins (themes). It has four major customizable themes:

 

  • Modern  - a vibrant theme that exhibits the UI potential of Qooxdoo 5.0.1
  • Classic  -  a MS Windows oriented theme
  • Indigo    -  a theme based on simplicity and offers the style of the Qooxdoo.org website
  • Simple   -  a lightweight theme, best use for customizations

 

Each Meta-theme is composed of five parts:

  • Appearance
  • Icon
  • Color
  • Font
  • Decoration

 

The user may also create a theme out from scratch. The code below creates a custom theme that sets three color properties in a hex value, an RGB array, and a named color:

 

qx.Theme.define("Application.theme.sample.Color", 

{ 
  colors : 

  { 

    // Color as hex value 

    "background-application" : "#DFDFDF", 

    // Color as RGB array 

    "background-pane" : [ 128, 128, 128 ], 

    // Color as named color 

    "background-light" : "Gray", 

  } 

}); 

Tip: It is advised to define the decorations within the theme instead of creating manually decorator instances inside your application code. This way the created decorators can be called and used by other widgets.

 

Although Qooxdoo can potentially create rich internet applications, it also assists in the coding of low-level functionalities with APIs that provide several objects that are reliant on higher-level classes but can also be called and used for low-level operations. These classes from the qx.bom module provide cross-browser support classes of the browser's JavaScript background runtime.

 

The user may also enable or disable the widgets drag-and-drop setup.

var dragTarget = new qx.ui.form.List; 

dragTarget.setDraggable(true); 

var dropTarget = new qx.ui.form.List; 

dropTarget.setDroppable(true); 

Classes are generated using the qx.Class.define() method. This is also known as ‘closed form’ of class declaration since all of the class's properties are to be set in the constructor. Below is a code example that creates a child class, defines a static variable and a corresponding member that can access the variable:

qx.Class.define("my.custom.Class", 

{ 

  extend : my.custom.SuperClass, 

  statics : { PI : 3.1416 }, 

  members : 

  { 

    circumference : function(radius) 

    { 

      return 2 * this.self(arguments).PI * radius; 

    } 

  } 

1

}); 

Another asset of Qooxdoo is the Mixin, a type of multiple inheritance that is not too common in other programming languages. Unlike interfaces, mixins includes code to execute instead of requiring a class to perform the contract. Mixins only cover a single aspect of functionality so it tends to be shorter. They are declared by qx.Mixin.define(name, config).

 

Qooxdoo's unique Atom widget, which is also not too common in other frameworks,  combines an image and a label. The Atom allows alignment options and shrinking of the label, while maintaining the image untouched. Below is an example of adding folder icons to items.

//create the model data 

var rawData = []; 

for (var x = 0; x  

There are so many innovative features that Qooxdoo can offer such as Rich Ajax Platform (RAP), used to create rich Ajax Web applications on  Eclipse IDE with  Qooxdoo for the client-side display, Qooxdoo Web Toolkit (QWT), which allows the user to write their Qooxdoo application in Java and then translates it into JavaScript, and other superb platforms and widgets that are all found and improved in Qooxdoo.

 

Conclusion

 

In this era of fast growing innovations, developers need to have an edge towards the landslide competition in order to produce efficient and globally qualified creations. In the world of application development and programming, Qooxdoo has already grown in popularity due to its excellent potential, reliability, and flexibility. Qooxdoo is the new trend in Web applications and interactive applications because of its outstanding aid in application construction with its very minimal skill requirement for advance operations. Qooxdoo is highly customizable, user-friendly, and open-source, meaning many sample applications and help for Qooxdoo sprout up on the internet, thanks to its big and active community. For developers who are familiar with the Java programming language this is the perfect tool in creating your very own high-end application.

 

By Alvie Amar | 8/16/2016 | Product Analysis

{{CommentsModel.TotalCount}} Comments

Your Comment

{{CommentsModel.Message}}

Top DiscoverSDK Experts

User photo
3355
Ashton Torrence
Web and Windows developer
GUI | Web and 11 more
View Profile
User photo
2340
Meir Rabinovich
Real time and embedded developer
Hardware and RT | General Libraries and 5 more
View Profile
User photo
1540
Nathan Gordon
Full Stack developer
Web | JavaScript and 1 more
View Profile
User photo
1490
Ronan McCarthy
Cross-Platform & Web developer.
Web | Mobile and 6 more
View Profile
Show All

Interested in becoming a DiscoverSDK Expert? Learn more

X

Compare Products

Select up to three two products to compare by clicking on the compare icon () of each product.

{{compareToolModel.Error}}

Now comparing:

{{product.ProductName | createSubstring:25}} X
Compare Now