# What you need to know

This library assumes a good knowledge of the following technologies:

- HTML 4.01

- XHTML 1.0

- CSS 2.1

- JavaScript 1.5 (ECMA-262 3rd Edition)

- AJAX

- Document object model (DOM)

The subsections below provide additional information that you should know when starting to develop widgets for mobile devices. The information relevant to you varies depending on your background as a developer.

### Web developers

The widgets discussed in this library are installed on a compatible mobile device and hosted by the Web Runtime (WRT) environment. The WRT environment is based on the WebKit browser engine. Developing widgets for a mobile device is in many ways similar to developing Web pages or widgets for desktop browsers, as widgets and the WRT environment use the same standards and technologies. This means that widgets may be quick to develop and distribute, for example, on your already existing Web site.

When developing widgets, you must take the nature of the mobile device environment into consideration. For more information on how to design usable widgets for mobile devices, see Designing widgets .

The WRT environment supports a slightly different set of Web technologies when compared with the desktop environment: there are limitations but also extensions. For more information, see Web Runtime features.

If you have already developed widgets for desktop browsers, it is possible for you to port them to the mobile device environment. For more information on porting, see section Porting widgets.

### Java and Symbian C++ developers

The widgets discussed in this library are installed on a compatible mobile device and hosted by the Web Runtime (WRT) environment. Developing widgets is another way of installing an application on an S60 mobile device. However, widgets utilize commonly used Web technologies instead of being based on Symbian C++ or Java.

For information on widget security, see Widget security.