NEW VERSION RELEASED! Webix 11 Read More Core Updates, Extended Functionalities in SpreadSheet and File Manager and more

WEBIX BLOG

HTML Layouts with Webix

Where it may be useful

HTML5 provides multiple ways of arranging elements on the page. However, while building web apps we can still face tasks that can’t be solved with pure HTML and CSS. For example, there’s a problem of mixing percent and fixed size values in the same row. Another task that exercises the developers’ minds is making columns of equal height. The CSS Grid specification looks like a promising solution to such problems, but it’s currently at the draft stage and implemented only in Internet Explorer. If you need to have a greater layout flexibility here and now – that is where Webix Layouts can help.

Cross Domain Data Loading with Webix

What the purpose is

Modern web apps can be rather complicated. It’s not uncommon that a single page can consume data from multiple sources, part of which can be provided by third party API or by a related application that resides on some other site. And that is where a problem occurs. A page hosted on one domain can’t access data from a different domain.

For example, if you have a page hosted on //app.mydomain.com, which tries to load data from the //data.mydomain.com, the data loading will fail. Any browser blocks such kind of data loading operation for safety reasons. Moreover, a request to a different port, such as //app.mydomain.com:5000 for example, will be blocked as well. URLs pointing to the same domain but to different ports are treated as URLs pointing to different domains.

Creating a simple Todo App with Webix

The reason

Webix is mostly a UI framework, it is oriented for usage in complex client side apps with a lot of controls and complex business logic. At the same time, it can be effectively used for solving common tasks without the necessity of learning any third party libraries. Let’s check these Webix features by creating a simple “ToDo” app. The ToDo App is like a “Hello World” for frameworks. It is the basic app, which shows how the main functionality of the framework can be used.

Todo App

You can grab the code of final version from GitHub or check the online demo.

How to Build a Mobile Web App with Webix

One of the key advantages of the Webix library is the ability to work on both desktop and mobile devices. A web-based user interface created with Webix will work properly on both platforms. Still there are some recommendations which will help you to achieve a better user experience while developing your mobile web app.

In this article I’ll try to describe the most significant features of mobile applications development. Let’s go into details by creating a simple ‘contact list’ app. This is a common app that allows users to create a contact list, look up the necessary contacts and view their details.

mobile app

You can download the full sources of the actual working application from the github repo or go check a live demo.

Webix 1.1: Improvements in Server-side Integration

We are happy to announce the release of new Webix 1.1. This update results in improving server-side integration, fixing the detected bugs and enhancing performance of the Webix UI components.

UI Improvements

The ability to disable any view was added. It is an expected functionality for form controls, but it can be used with all other Webix’s views as well. For example, you can disable a part of layout, text input or datable.

disable functionality

Drag-and-Drop in Webix UI

Not so long ago, the drag-and-drop functionality was used in web apps quite rarely. With HTML5 coming on the scene, native drag-and-drop has become easily accessible and popular. The functionality that required lots of coding efforts before, now can be added with a few lines of HTML code. While developing the Webix library, we tried to keep all features and advantages of native drag-and-drop. At the same time, we’ve added new capabilities that might be useful in web app development.

Component Level Drag-and-Drop

While HTML5 drag-and-drop is focused on an HTML element, Webix drag-and-drop concentrates on the UI components. For example, try to drag items between the tree and the grid in the demo below:

Creating a custom view – HipChat integration

One of the Webix’s great advantages is the possibility to use the third-party components. Obviously, instead of reinventing the wheel, it is better to take advantage of reliable, ready to use solutions. Especially now when the open source community is actively developing and supporting a variety of interesting libraries.

The standard Webix pack already includes wrappers for such popular solutions as Google Maps, FCK Editor, D3 charts and lots of others. However, it is a drop in the ocean. Every day new js libraries appear, and it’s impossible to provide support to all of them out of the box. Instead of this, Webix allows creating new integration for any third party library by, literally, several lines. Lets check how it can be done.

Some Fixes and Updates for Webix Library

We would like to announce another Webix minor update (1.0.2) improving the following features of the library:

  • IE8 compatibility
  • Loading UI from XML
  • Security of data-saving operations.

Component styling pattern was considerably changed. The appearance of the components remains the same but now it is easier to customize them.

Furthermore few extra API methods were added in Version 1.0.2.

You are welcome to download the updated Webix library.

DataTable – 1000 columns and more

As you may know from the previous article JS Grid with 1 000 000 rows, DataTable is not limited by the number of rows. What about columns?

The above example shows a grid with 1 000 columns. Yep, it is not a million, but still quite impressive, isn’t it?

Webix Grid – 1 000 000 Rows and More

It would be nice to have a UI that could support any amount of data. Even if today you have only a hundred of records to load into a grid, it wouldn’t guarantee that this hundred won’t turn into 10 000 in a month or into 100 000 in a year. The more successful your application is, the greater the chance that the amount of data will increase. It means that you will have to adjust your app to support a large data set.

1 30 31 32 33