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.

C056051a062fb1054cb45d98177384aa?s=128

Fokke Zandbergen

October 18, 2014
Tweet

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 §