Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The Ultimate Titanium CLI Toolchain

The Ultimate Titanium CLI Toolchain

I gave this talk at Connect.JS in Atlanta, October 17-18 20014

See: http://fokkezb.nl/tag/ticonnect

Though Studio has improved a lot, the CLI has as well - allowing you to use your own favourite editor instead and even increase your productivity by using some community-developed tools like TiShadow, gitTio, Grunt, TiCons, Ti-Inspector, STSS and many more.

Fokke Zandbergen

October 18, 2014
Tweet

More Decks by Fokke Zandbergen

Other Decks in Technology

Transcript

  1. The Ultimate Titanium CLI Toolchain

  2. None
  3. None
  4. None
  5. None
  6. …"but"so"has"the"CLI Copyright*2006*Brian*Snelson

  7. …"but"so"has"the"CLI Copyright*2006*Brian*Snelson

  8. Why choose CLI over Studio? performance*•*freedom*•*automation

  9. What do we need? • Editor* • Rapid*Application*Development*(RAD)** • Dependency*Management*

    • Debugging*&*Testing* • Deployment*&*Continuous*Integration*(CI)* • Coffee
  10. EDITING Copyright*2005*Poil

  11. Studio • Syntax*highlighting* • Code*completion* • JSHint* • Auto*formatting* •

    Open**related*files* • Git*integration* • Build*system
  12. Sublime Text • Build*System,*Code*Assist*&*Syntax*highlighting
 github.com/MattTuttle/sublimeQtiQbuild* • DashDoc:*github.com/farcaller/DashDoc** • JSHint:*github.com/SublimeLinter/SublimeLinter* •

    Formatting:*github.com/jdc0589/JsFormat* • Related*files:*go.fokkezb.nl/suballoy
  13. 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
  14. InteliJ IDEA/WebStorm • By*Dave*Townsend:*go.fokkezb.nl/tiQwebstorm** • Code*completions:*JSCA2JS* • Configurable*TSS*syntax*highlighting

  15. RAD Copyright*2009*Filippo*Salamone

  16. Studio ti build -p ios --liveview

  17. Studio ti build -p ios --liveview

  18. TiShadow

  19. MODULES Copyright*Astrid*Westvang

  20. Studio

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

  22. TitaniumControls.com" TitaniumControls

  23. • github.com/smclab/titaniumifier** • Turns*Node.JS*modules*Q*including*dependencies** Q*into*Titanium*CommonJS*modules* • Distributable*via*NPM,*soon*via*gitTio Titaniumifier

  24. DEBUGGING Copyright*Benjamint444

  25. Studio

  26. Ti1Inspector Ti-Inspector

  27. • 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

  28. TiO2"1"npmjs.org/package/tio2 Appcelerator*(Soasta?)* tiO2

  29. DEPLOYMENT Copyright*Benjamint444

  30. Studio

  31. ti-installr-hook
 npmjs.org/package/ti-installr-hook installr - https://www.npmjs.org/ ti-installr-hook

  32. Copyright*2009*Humanrobo AUTOMATION

  33. • 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

  34. STSS" LTSS STSS

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

  36. TiCons tiCons

  37. alloy-smelter • generate*from*template* • copy/move/remove* • build*skipping*Alloy* • clean*including*Resources* •

    install*Alloy*+*Ti*CLI*&*SDK
  38. ti1i18n"1"npmjs.org/package/tiQi18n tiCommonJS*Q*npmjs.org/ ti-i18n

  39. 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'
  40. Grunt • TiShadow*Q*npmjs.org/package/gruntQtishadow** • Alloy*Q*npmjs.org/package/gruntQalloy** • Titanium*Q*npmjs.org/package/gruntQtitanium* Grunt

  41. $ grunt Grunt • Increment*tiapp.xml*version* • Titanium*clean* • Titanium*build*iOS* •

    Titanium*build*Android* • Installr*upload*iOS* • Installr*upload*Android
  42. @FokkeZB* fokkezb.nl/tag/ticonnect §

  43. @FokkeZB* fokkezb.nl/tag/ticonnect §