AppSuite:Developing for the UI: Difference between revisions

From Open-Xchange
No edit summary
Line 50: Line 50:
* Checkout and deploy the backend locally using Eclipse IDE. [[AppSuite:Apache Configuration | Apache config]]  
* Checkout and deploy the backend locally using Eclipse IDE. [[AppSuite:Apache Configuration | Apache config]]  


* or run [[AppSuite:Appserver | Appserver]] using an existing OX AppSuite server and copy the source from openxchange git repositories and  (with local parts of the AppSuite) automaticly getting the recent stable source packages from the AppSuite servers.
* or run [[AppSuite:Appserver | Appserver]] using an existing OX AppSuite server, [[AppSuite:UI build system#Source | copy the source from openxchange git repositories] and  (with local parts of the AppSuite) automaticly get the recent stable source packages from the AppSuite servers.


=== What's next ===
=== What's next ===
* Get started writing an [[#What_can_i_build.3F | app or plugin]] of your choice.
* Get started writing an [[#What_can_i_build.3F | app or plugin]] of your choice.
* Get your code [[#How_to_get_your_code_running | running]].
* Get your code [[#How_to_get_your_code_running | running]].

Revision as of 11:38, 22 October 2013

UI Development for OX AppSuite

This page contains articles about the inner workings of the web-based graphical user interface. It is aimed at software developers that want to improve on existing features, implement extensions or just gain a general understanding.

Tech Overview

All technologies and frameworks used for developing a new component for the AppSuite UI are listed and described in the following article: Skills needed to develop the UI

Developing Style Guide

While developing code for OX products the UI Developement Style Guide helps you writing safe, clear and functional code.

Designing apps, plugins and widgets running with the right layout, colors, look and feel is a breeze following the guidelines described in the UI Design Guide.

Always keep in mind, that using OX products should be possible for everyone and therefor it's important to follow simple rules regarding accessibility.

Using Extensionpoints

Writing apps or plugins for AppSuite will often include extending the existing user interface. AppSuite provides extension points offering you possibilties to add your own contents. Beginning to develop using extension points? Read this guide first having a hands-on introduction for extending the OX user interface. Get more information and a complete list of extension points offered by OX products.

How to get code

Using git as a version version control system getting the code from existing OX products is quite easy. Simply clone the UI or the backend repository and start working with it.

What can i build?

The following possibilities are available to develop for AppSuite.

  • A portal plugin is a widget, which can be used in the 'portal'-section of AppSuite only. Please just check for the right extension point to write a plugin which extends and interacts with other parts of AppSuite. Configuring portal plugins can be achieved by reading this guide
  • Upsell Widget, to enable the AppSuite user to purchase additional features.
  • A wizard, which can be first time users to show them important informations or configure initial settings for 3rd party applications.

You got stuck somewhere? There are some hints, which might help you debugging the UI.

How to get your code running

Written your first app/plugin? Using the UI build system will help you to get fast, easy-to-distribute and correct builds running on your AppSuite. The article will show you how to package your code and copy from OX source code / directories.

Since the AppSuite product consists of a server and a UI, you also need a working backend (AppSuite application server) to communicate with.

You have 2 options:

  • Checkout and deploy the backend locally using Eclipse IDE. Apache config
  • or run Appserver using an existing OX AppSuite server, [[AppSuite:UI build system#Source | copy the source from openxchange git repositories] and (with local parts of the AppSuite) automaticly get the recent stable source packages from the AppSuite servers.

What's next