Application Integration

Developing Native APIs with Hyperloop

A little over a year ago, we rolled out Hyperloop to eliminate the need for OS-specific modules so that every single native API on iOS and Android can be developed using simple JavaScript. Since then, our developer community has embraced Hyperloop, creating powerful modules as if they were built with native SDKs. In celebration of Hyperloop’s first birthday, we sat down with an avid user to learn what he’s created with the tool, his tips for developers getting started with Hyperloop and exciting projects on the horizon.

Nazir Dogan
, Mobile Application Developer and Software Developer at Etiya, has been using Hyperloop since its early days to create six unique open-sourced modules. Here’s what Nazir had to say:

How have you used Hyperloop?

Hyperloop is an extremely versatile app building platform. I’ve been able to use the tools in Hyperloop to build six different modules, each with a unique and distinct purpose. For example, one module I’ve created is called Draw View, which allows you to easily collect user signatures within your apps. Some of the other modules I’ve created include an easy to implement like/favorite button and a tool to help scan documents. I’ve also built some specific modules for iOS such as an in-app star rating system, a circular slider tool and a fully customizable calendar library.

With Hyperloop, it’s simple to create cross-platform modules that can easily be plugged or unplugged from your apps. Of course, there are some APIs that are unique to specific operating systems and require custom modules in the native OS language. For these, Axway Appcelerator provides some of the modules. You can also find others you may need from other community members, such as those I’ve built above, which can be found on Github for free.

Why use Hyperloop over a native SDK? How much time do you think Hyperloop saves you during the development process?

I started programming with Titanium, where I learned to develop apps for both Android and iOS. While Titanium is what I’ve come to love, there was sometimes one issue: occasionally you need to build for native functionality that Titanium doesn’t have in core services. This meant that in certain circumstances, you need to develop native modules, which on Titanium can be harder for those who are just learning how to develop.

Hyperloop enables me to develop native APIs with relative ease because it eliminates the need for OS-specific modules. This means that I’m not required to learn any native OS language, but can still build native modules with JavaScript. It removes the difference between building for Titanium versus building for native language, while still giving you 100% access to every native feature.

Thanks to these features, Hyperloop can save 70% of your time over developing for native languages. The time Hyperloop can save you while building modules can be invaluable, and has allowed me to better satisfy our customers’ expectations. Hyperloop lets you develop any apps using Titanium without fear of hitting the usual roadblocks associated with native languages, which saves so much time and headaches.

What functionality have you been able to unlock using Hyperloop?

All of the modules I’ve built utilize functionality a step beyond Titanium’s core service. For example, the document scanner and calendar modules are two modules that can be very useful for developers.

Do you have any tips for developers who are just starting out with Hyperloop?

Developers should be most concerned with how native programming works, and how those interactions affect the development process when working with Titanium. Android and iOS have a different programming paradigm, with separate languages and user interface or user experience designs. Since Hyperloop lets you use JavaScript to access every single native API on either iOS or Android, it’s a great base for beginners to learn how to build modules that require specific native OS language.

What new modules are you currently working on or plan to work on in the future?

I’m currently working on a video player module that will have a completely customizable user interface, as well as some other really cool features that I can only implement using Hyperloop. These include display subtitles and support of http live streaming.

While right now I’m focused on building Hyperloop modules solely for the iOS platform, some others in the community are also helping to develop Android versions of my current modules. One such example is the calendar module mentioned earlier, which another developer has ported for use on the Android platform. With Hyperloop, the possibilities for new modules are endless, and can be built in a fraction of the time it took before.