43
The Ultimate Titanium CLI Toolchain

The Ultimate Titanium CLI Toolchain

Embed Size (px)

Citation preview

Page 1: The Ultimate Titanium CLI Toolchain

The UltimateTitanium CLI Toolchain

Page 2: The Ultimate Titanium CLI Toolchain
Page 3: The Ultimate Titanium CLI Toolchain
Page 4: The Ultimate Titanium CLI Toolchain
Page 5: The Ultimate Titanium CLI Toolchain
Page 6: The Ultimate Titanium CLI Toolchain

…"but"so"has"the"CLI

Copyright*2006*Brian*Snelson

Page 7: The Ultimate Titanium CLI Toolchain

…"but"so"has"the"CLI

Copyright*2006*Brian*Snelson

Page 8: The Ultimate Titanium CLI Toolchain

Why choose CLI over Studio?

performance*•*freedom*•*automation

Page 9: The Ultimate Titanium CLI Toolchain

What do we need?

• Editor*

• Rapid*Application*Development*(RAD)**

• Dependency*Management*

• Debugging*&*Testing*

• Deployment*&*Continuous*Integration*(CI)*

• Coffee

Page 10: The Ultimate Titanium CLI Toolchain

EDITING

Copyright*2005*Poil

Page 11: The Ultimate Titanium CLI Toolchain

Studio

• Syntax*highlighting*

• Code*completion*

• JSHint*

• Auto*formatting*

• Open**related*files*

• Git*integration*

• Build*system

Page 12: The Ultimate Titanium CLI Toolchain

Sublime Text• Build*System,*Code*Assist*&*Syntax*highlightinggithub.com/MattTuttle/sublimeQtiQbuild*

• DashDoc:*github.com/farcaller/DashDoc**

• JSHint:*github.com/SublimeLinter/SublimeLinter*

• Formatting:*github.com/jdc0589/JsFormat*

• Related*files:*go.fokkezb.nl/suballoy

Page 13: The Ultimate Titanium CLI Toolchain

Atom

• All*JavaScript…*hackable,*but*slow*

• TSS:*github.com/m1ga/languageQtss*

• Generator:*atom.io/packages/tiQcreate*

• Shortcuts:*atom.io/packages/tiQalloyQrelated*

• Build*system:*atom.io/packages/tiQbuildQatom

Page 14: The Ultimate Titanium CLI Toolchain

InteliJ IDEA/WebStorm

• By*Dave*Townsend:*go.fokkezb.nl/tiQwebstorm**

• Code*completions:*JSCA2JS*

• Configurable*TSS*syntax*highlighting

Page 15: The Ultimate Titanium CLI Toolchain

RAD

Copyright*2009*Filippo*Salamone

Page 16: The Ultimate Titanium CLI Toolchain

Studio

ti build -p ios --liveview

Page 17: The Ultimate Titanium CLI Toolchain

Studio

ti build -p ios --liveview

Page 18: The Ultimate Titanium CLI Toolchain

TiShadow

Page 19: The Ultimate Titanium CLI Toolchain

MODULES

Copyright*Astrid*Westvang

Page 20: The Ultimate Titanium CLI Toolchain

Studio

Page 21: The Ultimate Titanium CLI Toolchain

gitTio"1"http://gitt.io"

gitTio

Page 22: The Ultimate Titanium CLI Toolchain

TitaniumControls.com"

TitaniumControls

Page 23: The Ultimate Titanium CLI Toolchain

• github.com/smclab/titaniumifier**

• Turns*Node.JS*modules*Q*including*dependencies**

Q*into*Titanium*CommonJS*modules*

• Distributable*via*NPM,*soon*via*gitTio

Titaniumifier

Page 24: The Ultimate Titanium CLI Toolchain

DEBUGGING

Copyright*Benjamint444

Page 25: The Ultimate Titanium CLI Toolchain

Studio

Page 26: The Ultimate Titanium CLI Toolchain

Ti1Inspector

Ti-Inspector

Page 27: The Ultimate Titanium CLI Toolchain

• TiShadow*Q*npmjs.org/package/tishadow*

• TiMocha*Q*npmjs.org/package/tiQmocha*(Tony)*

• TiO2*Q*npmjs.org/package/tio2*(Jeff)*

• TiCalabash*Q*npmjs.org/package/ticalabash

Automated testing

Page 28: The Ultimate Titanium CLI Toolchain

TiO2"1"npmjs.org/package/tio2

Appcelerator*(Soasta?)*

tiO2

Page 29: The Ultimate Titanium CLI Toolchain

DEPLOYMENT

Copyright*Benjamint444

Page 30: The Ultimate Titanium CLI Toolchain

Studio

Page 31: The Ultimate Titanium CLI Toolchain

ti-installr-hook npmjs.org/package/ti-installr-hook

installr - https://www.npmjs.org/

ti-installr-hook

Page 32: The Ultimate Titanium CLI Toolchain

Copyright*2009*Humanrobo

AUTOMATION

Page 33: The Ultimate Titanium CLI Toolchain

• Coffee*Q*made*for*drinking!

• LTSS*Q*github.com/dbankier/ltss**

• STSS*Q*github.com/RonaldTreur/STSS**

• JADE*Q*go.fokkezb.nl/alloyjade

Pre-Processors

Page 34: The Ultimate Titanium CLI Toolchain

STSS"

LTSS

STSS

Page 35: The Ultimate Titanium CLI Toolchain

TiNy - npmjs.org/package/tn installr - https://www.npmjs.org/

TiNy (tn)

Page 36: The Ultimate Titanium CLI Toolchain

TiCons

tiCons

Page 37: The Ultimate Titanium CLI Toolchain

alloy-smelter

• generate*from*template*

• copy/move/remove*

• build*skipping*Alloy*

• clean*including*Resources*

• install*Alloy*+*Ti*CLI*&*SDK

Page 38: The Ultimate Titanium CLI Toolchain

ti1i18n"1"npmjs.org/package/tiQi18n

tiCommonJS*Q*npmjs.org/

ti-i18n

Page 39: The Ultimate Titanium CLI Toolchain

CLI does have downsides

$ ti clean && ti build -p ios -t dist-adhoc -R “Flasher (X242ZJ33XX)” -P “0253600x-ac6d-35b6-b66d-dd25c4fd956f” -O “dist” -b --installr --installr-release-notes='New build with awesome features'

Page 40: The Ultimate Titanium CLI Toolchain

Grunt

• TiShadow*Q*npmjs.org/package/gruntQtishadow**

• Alloy*Q*npmjs.org/package/gruntQalloy**

• Titanium*Q*npmjs.org/package/gruntQtitanium*

Grunt

Page 41: The Ultimate Titanium CLI Toolchain

$ grunt

Grunt

• Increment*tiapp.xml*version*

• Titanium*clean*

• Titanium*build*iOS*

• Titanium*build*Android*

• Installr*upload*iOS*

• Installr*upload*Android

Page 42: The Ultimate Titanium CLI Toolchain

@FokkeZB*

fokkezb.nl/tag/ticonnect

§

Page 43: The Ultimate Titanium CLI Toolchain

@FokkeZB*

fokkezb.nl/tag/ticonnect

§