@titanium/turbo

🚀 Axway Amplify tool to use Turbo for turbo charging your Appcelerator Titanium SDK Framework!


Keywords
appcelerator, titanium, native, alloy, mobile, axway, ios, iphone, android, appc-client, turbo, sdk, plugin, amplify, api-builder, titanium-sdk, titanium-mobile, titanium-module, axway-sdk, axway-amplify, appcelerator-titanium, brenton-house, cli, cross-platform-native, plugins, titanium-alloy, titanium-turbo
License
Apache-2.0
Install
npm install @titanium/turbo@1.14.1-12

Documentation

Axway Amplify End-of-Life Announcement

👇   See notes below   👇

RIP Axway Amplify Titanium (2010 - 2022)

🪦   RIP Axway Amplify Titanium (2010 - 2022)

🪦   RIP Axway Amplify Cloud Services (2012 - 2022)


🛑    All products affected by the announcements will not be supported by Axway effective their EOL dates in 2022.

Some Open-Source versions of Axway products will live on after End-of-Life (EOL) Axway Amplify product announcements. However, some products are closed-source and will NOT continue after the shut down in 2022.

 

👉    Stay tuned for more info as plans are being made to save the Titanium project and move it under the control of a independent group of developers.

 


 

 

Titanium Turbo

The awesome framework for turbo charging your Titanium cross-platform native mobile app development!


@titanium/turbo version @titanium/turbo downloads @titanium/turbo dependencies

ℹ️   Disclaimer:
This project is not an official Axway product. It is managed by the open-source community using open-source modules, libraries, and tools. Try it out and let us know what you think!



📓   Description

Titanium Turbo is a fork of Titanium Alloy that adds a lot of enhancements and customizations for rapid development.

Starting with Turbo v2, version number of Turbo will no longer be tied to versions of Titanium Alloy.

This version of Titanium Turbo is based on Titanium Alloy 1.15.1

🚀   Getting Started

Simple Method

Create new Titanium Turbo project

npx @geek/mobile app:create my-new-app

Build or Run app as you would normally.


Manual Method

Create new Titanium Alloy project

Install Titanium Turbo in root of project

npm install --save-dev @titanium/turbo

Install Titanium Turbo Plugin in root of project

npm install --save-dev @titanium/plugin-turbo

Build or Run app as you would normally.


  Features

See changelog.md for history of changes

  • Supports installing npm packages in root of project for use in mobile [TIMOB-26352] [Alloy PR] Exclusive Turbo Feature
  • Support for the following XML attributes in textField, label, and textArea: [ALOY-1547] Exclusive Turbo Feature
    • fontSize
    • fontFamily
    • fontStyle
    • fontWeight
    • textStyle
  • Replaced Underscore.js with Lodash 4.17.12 [ALOY-1168]
  • Updated babel.js to 7.x [ALOY-1629] Has been merged into Alloy
  • Enhanced support for babel config files: .babelrc, .babelrc.js and babel.config.js Exclusive Turbo Feature
  • Added support for camelCase, snake_case, and kabab-case in XML views. [ALOY-1647] Exclusive Turbo Feature
  • Added plugin property compileConfig.dir.resourcesAlloy Exclusive Turbo Feature
  • Updated moment to 2.24.0 [ALOY-1682] Has been merged into Alloy
  • Added backbone 1.4.0 [ALOY-1648] Has been merged into Alloy
  • Made default backbone version: 1.4.0
  • Added support for xml namespaced attributes per platform (e.g. ios:text or android:text) [ALOY-1646] Has been merged into Alloy
  • Added support for xml attributes with dotted notation (e.g. font.fontSize) [ALOY-1363] Has been merged into Alloy
  • Added support for using $.args in XML views. [ALOY-1316] Has been merged into Alloy
  • Added support for using $.* in XML views. -- Anything that starts with "$." in an Alloy XML View will be used literally and not treated as a string. Exclusive Turbo Feature
  • Added support for using turbo.* in XML views. -- Anything that starts with "turbo." in an Alloy XML View will be used literally and not treated as a string. [Required workaround for node_modules support to LiveView] [TIMOB-27206] Exclusive Turbo Feature
  • Added support for __init() function in controller that will be called before view is built. -- Allows $.* variables to be created and used in XML views. Exclusive Turbo Feature
  • Added support for visibility property in XML Views with possible values of: collapse, expand, and visible, hidden -- Allows collapsing of view in XML. [TIMOB-27307] Exclusive Turbo Feature
  • Added constants: Ti.UI.VISIBILITY_COLLAPSE, Ti.UI.VISIBILITY_EXPAND, Ti.UI.VISIBILITY_HIDDEN, and Ti.UI.VISIBILITY_VISIBLE Exclusive Turbo Feature
  • Added support for modelName XML attribute to be used with with dataCollection to assign variable name to current model [Defaults to __currentModel] Exclusive Turbo Feature
  • Added support for dataName XML attribute to be used with with dataCollection to assign variable name to model.__transform [Defaults to $model] -- Allows developer to reference current model properties like $model.myproperty Exclusive Turbo Feature
  • Added support for adding code to XML View attributes when surrounded by '~' [ALOY-1699] Exclusive Turbo Feature
  • Added support for script element in XML View. Add code by body or src attribute. [ALOY-1700] [Alloy PR] Exclusive Turbo Feature
  • Added value alias center for Ti.UI.TEXT_VERTICAL_ALIGNMENT_CENTER when used with verticalAlign XML attribute [ALOY-1703] Exclusive Turbo Feature
  • Added property alias text for Ti.UI.Button.title when used as XML attribute Exclusive Turbo Feature
  • Added property alias src for Ti.UI.ImageView.image when used as XML attribute Exclusive Turbo Feature
  • Added support for using underscore (instead of lodash) with this tiapp.xml property: <property name="use-underscore"type="bool">true</property> Exclusive Turbo Feature
  • Added support for installing widgets via npm (without naming restrictions) [ALOY-1704] Exclusive Turbo Feature
  • Added support for using WPATH() in xml view attributes: [ALOY-1253] [Alloy PR] Exclusive Turbo Feature
  • Added support for using ~/ as a shortcut for WPATH() in xml view attributes: [ALOY-1714] [Alloy PR] Exclusive Turbo Feature
  • Added support for using widget as primary control in xml view [ALOY-1256] [Alloy PR] Exclusive Turbo Feature
  • Added support for StackLayout control (with shortcut alias of stack and orientation property that defaults to vertical) in JavaScript and xml views Exclusive Turbo Feature
  • Added support for VerticalLayout control (with shortcut alias of vertical) in JavaScript and xml views Exclusive Turbo Feature
  • Added support for HorizontalLayout control (with shortcut alias of horizontal) in JavaScript and xml views Exclusive Turbo Feature
  • Added support for AbsoluteLayout control (with shortcut alias of absolute) in JavaScript and xml views Exclusive Turbo Feature
  • Added support for defining the primary entry point for the application (defaults to index). Currently search order: Alloy.mainAlloy.CFG.main → Titanium Property: app.main. [ALOY-1549] Exclusive Turbo Feature
  • Added support for <style> tag in XML views. Also supports the src attribute (like the <script> tag) which allows users to reference a widget-wide app.tss file! [ALOY-1729] Exclusive Turbo Feature
  • Partial workaround for Titanium and Alloy issue where relative path require statements are broken. This only fixes static paths. Fix for dynamic paths will be coming in upcoming release of Turbo. [TIMOB-28037] Exclusive Turbo Feature
  • Added support for static script blocks in Alloy <script static="true" /> [ALOY-1742] Exclusive Turbo Feature

🎓 Learn More

  Axway Developer Blog
  Axway Developer YouTube Channel
  Axway Developer Portal
  AMPLIFY Titanium GitHub Repo
  Titanium Alloy GitHub Repo
  Titanium Turbo GitHub Repo

📚   Related projects

  Geek Mobile Toolkit - Toolkit for creating, building, and managing mobile app projects.
  Titanium Mobile - Open-source tool for building powerful, cross-platform native apps with JavaScript.
  Titanium Alloy - MVC framework built on top of Titanium Mobile.
  Appcelerator - Installer for the Appcelerator Platform tool

🎟️   Modules for Titanium Mobile

project description npm
@titanium/applesignin Native modules that allows you to use the iOS 13+ Apple Sign In API with Axway Titanium native mobile apps. @@titanium/applesignin
@titanium/authentication Titanium native mobile authentication manager @titanium/authentication
@titanium/authentication-oauth Titanium native mobile OAuth plugin for authentication manager @titanium/authentication-oauth
@titanium/calendar-picker urbo widget that allows you to pick dates from a calendar with Axway Titanium. @titanium/calendar-picker
@titanium/coremotion Native modules that allows you to use iOS CoreMotion framework with Axway Titanium native mobile apps. @titanium/coremotion
@titanium/essentials The Essential Toolkit for Titanium Turbo Native Mobile Apps @titanium/essentials
@titanium/icloud Native module that allows you to use the Apple iCloud framework with Axway Titanium native mobile apps. @titanium/icloud
@titanium/identity Native modules to add Fingerprint/FaceId/keychain access to Titanium native mobile apps @titanium/identity
@titanium/facebook Native modules that allows you to use Facebook SDK with Axway Titanium native mobile apps. @titanium/facebook
@titanium/googlesignin Native modules that allows you to use the Google Sign-in SDK with Axway Titanium native mobile apps. @titanium/googlesignin
@titanium/lottie Native modules that allows you to use Airbnb Lottie animations with Axway Titanium native mobile apps. @titanium/lottie
@titanium/observer Repackaging of nx-js/observer-util for Titanium Native Mobile @titanium/observer
@titanium/please Titanium native mobile library for politely requesting stuff from the internets @titanium/please
@titanium/polyfill Titanium native mobile polyfills necessary to use packages that depend on Node.js modules @titanium/polyfill
@titanium/turbo 🚀 Turbo is the awesome framework for turbo charging your Titanium cross-platform native mobile app development! @titanium/turbo
@titanium/updater Titanium native mobile widget to check for app updates @titanium/updater
@titanium/webdialog Native modules that allows you to use native SFSafariViewController (iOS) and Chrome Pages (Android) with Axway Titanium native mobile apps. @titanium/webdialog

🎟️   Modules for Node.js and Titanium Mobile

project description npm
@geek/cache Caching module for Node.js and Axway Titanium @geek/cache
@geek/jsonc JSONC and JSON utilities for JavaScript with Node.js and Axway Titanium. @geek/jsonc
@geek/jwt JWT parser for JavaScript Node.js and Titanium native mobile @geek/jwt
@geek/logger Logging module for Node.js and Axway Titanium @geek/logger
@geek/mobile Toolkit for creating, building, and managing mobile app projects. @geek/mobile
@geek/retry Retry JavaScript functions and promises in Node.js and Axway Titanium @geek/retry

📦   Project Starter Kits

project description npm
Titanium Turbo Template (Default) Template for default Turbo app. Based on the basic Alloy Template + some extra goodies. @titanium/template-turbo-default
Titanium Turbo Template (Next) Template for Titanium Turbo app (with extras). Based on the default Turbo Template + some extras. @titanium/template-turbo-next
Titanium Turbo Template (Fully Loaded) Template for Titanium Turbo app with all the bells and whistles! @titanium/template-turbo-fully-loaded

📣   Feedback

Have an idea or a comment? Join in the conversation here!


Follow Brenton House

Follow Brenton House for the latest on great modules and libraries!

Twitter Follow LinkedIn Follow Github Followers


©️   Legal

Alloy is developed by Appcelerator and the community and is Copyright © 2012-Present by Appcelerator, Inc. All Rights Reserved.

Alloy is made available under the Apache Public License, version 2. See their license file for more information.

Appcelerator is a registered trademark of Appcelerator, Inc. Titanium is a registered trademark of Appcelerator, Inc. Please see the LEGAL information about using trademarks, privacy policy, terms of usage and other legal information at http://www.appcelerator.com/legal.