This proposal has been approved and the Eclipse Thym project has been created.
Visit the project page for the latest information and development.

Thym

Wednesday, March 5, 2014 - 16:18 by Wayne Beaton
This proposal is in the Project Proposal Phase (as defined in the Eclipse Development Process) and is written to declare its intent and scope. We solicit additional participation and input from the community. Please login and add your feedback in the comments section.
Project
Parent Project
Proposal State
Created
Background

Mobile applications are no longer optional but they're an imperative. The first issue faced by developers and organizations when developing mobile applications is that there are competing mobile application ecosystems to develop for. Not only they need to be competent on these platforms, API sets, programming languages and tools but also they need versions optimized for phone, tablet smart TV, smart watch and smart glasses etc..

Hybrid Mobile development platforms provide a way to take advantage of using web technologies (HTML5, CSS3 and JavaScript) and release on multiple platforms. They allow application developers to leverage native platform features without the need to learn about each platform in great detail. Hybrid Mobile application development frameworks do a great job at providing a native container that abstracts developers from the platform details. Apache Cordova is the most popular and commonly used hybrid mobile development framework today. In addition to abstraction from native platform, it also provides a powerful feature set a very strong plugin ecosystem, and a healthy open source ecosystem to mobile developers.

However, the development of tools that span multiple mobile platforms is challenging because of the multiple languages, build processes, fast changing requirements and APIs that needs to be covered by the tools.

Scope

Thym (The HYbrid Mobile) project delivers IDE components and a framework for developing Hybrid Mobile Applications on the Eclipse platform. The delivered IDE components support the Apache Cordova framework, but facilitate extensibility to other frameworks including the ones that are not based on Apache Cordova.

Description

Thym abstracts the platform and its related tooling details from the developers, allowing them to work with HTML5 development tools. It includes a series of generators that are capable of generating native platform projects such as XCode or Android projects and compiling them. There are also launchers for testing applications on native emulators and devices.

Thym also provides tools for configuring and managing the projects. It provides editors for configuration files, and tools for managing Hybrid Mobile engines (for instance Cordova versions) and plug-ins for a project

Why Here?

Eclipse is the leader on open source software development tools. This project will open Eclipse to a Hybrid Mobile application development which is an area of interest also to existing Eclipse community. Thym will benefit from the Eclipse's high standard of IP control and strong governance. Also we expect the user community of the project to benefit from participation in release trains and inclusion on future EPP packages.

Project Scheduling

We are aiming to produce an initial Eclipse community based release to that will be based on Luna release train.

Project Leads
Committers
Ilya Buziuk (This committer does not have an Eclipse Account)
Mentors
Interested Parties

Doug Schafer - QNX/BlackBerry

Ken Wallis - BlackBerry

Naci Dai - Eteration

Matthew Whiteman -BlackBerry

John M. Wargo

Initial Contribution

The initial contribution is donated by Red Hat. The current code base has been developed by a handful of developers over about a year period. Thym is distributed as part of JBoss Tools and it is actively developed on its GitHub repository.

The initial contribution includes the following main components.

  • New project wizards and project types
  • Project import and export wizards to native formats(project and binary)
  • Configuration editor
  • Android Support
  • iOS support
  • Cordova plug-in management
  • Hybrid mobile engine and version management

The original project also includes a Cordova simulator based on Apache Ripple to test Cordova applications without any native platform SDKs. This component will not be part of the initial contribution but may eventually move.

The current codebase depends on components from JavaScript Development Tools (JSDT) and Source Editing projects.