SlideShare a Scribd company logo
1 of 43
Download to read offline
The Ultimate
Titanium CLI Toolchain
…"but"so"has"the"CLI
Copyright*2006*Brian*Snelson
…"but"so"has"the"CLI
Copyright*2006*Brian*Snelson
Why choose CLI over Studio?
performance*•*freedom*•*automation
What do we need?
• Editor*
• Rapid*Application*Development*(RAD)**
• Dependency*Management*
• Debugging*&*Testing*
• Deployment*&*Continuous*Integration*(CI)*
• Coffee
EDITING
Copyright*2005*Poil
Studio
• Syntax*highlighting*
• Code*completion*
• JSHint*
• Auto*formatting*
• Open**related*files*
• Git*integration*
• Build*system
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
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
InteliJ IDEA/WebStorm
• By*Dave*Townsend:*go.fokkezb.nl/tiQwebstorm**
• Code*completions:*JSCA2JS*
• Configurable*TSS*syntax*highlighting
RAD
Copyright*2009*Filippo*Salamone
Studio
ti build -p ios --liveview
Studio
ti build -p ios --liveview
TiShadow
MODULES
Copyright*Astrid*Westvang
Studio
gitTio"1"http://gitt.io"
gitTio
TitaniumControls.com"
TitaniumControls
• github.com/smclab/titaniumifier**
• Turns*Node.JS*modules*Q*including*dependencies**
Q*into*Titanium*CommonJS*modules*
• Distributable*via*NPM,*soon*via*gitTio
Titaniumifier
DEBUGGING
Copyright*Benjamint444
Studio
Ti1Inspector
Ti-Inspector
• 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
TiO2"1"npmjs.org/package/tio2
Appcelerator*(Soasta?)*
tiO2
DEPLOYMENT
Copyright*Benjamint444
Studio
ti-installr-hook

npmjs.org/package/ti-installr-hook
installr - https://www.npmjs.org/
ti-installr-hook
Copyright*2009*Humanrobo
AUTOMATION
• 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
STSS"
LTSS
STSS
TiNy - npmjs.org/package/tn
installr - https://www.npmjs.org/
TiNy (tn)
TiCons
tiCons
alloy-smelter
• generate*from*template*
• copy/move/remove*
• build*skipping*Alloy*
• clean*including*Resources*
• install*Alloy*+*Ti*CLI*&*SDK
ti1i18n"1"npmjs.org/package/tiQi18n
tiCommonJS*Q*npmjs.org/
ti-i18n
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'
Grunt
• TiShadow*Q*npmjs.org/package/gruntQtishadow**
• Alloy*Q*npmjs.org/package/gruntQalloy**
• Titanium*Q*npmjs.org/package/gruntQtitanium*
Grunt
$ grunt
Grunt
• Increment*tiapp.xml*version*
• Titanium*clean*
• Titanium*build*iOS*
• Titanium*build*Android*
• Installr*upload*iOS*
• Installr*upload*Android
@FokkeZB*
fokkezb.nl/tag/ticonnect
§
@FokkeZB*
fokkezb.nl/tag/ticonnect
§

More Related Content

What's hot

What's hot (19)

O365Con18 - Git and GitHub - Rick van Rousselt
O365Con18 - Git and GitHub - Rick van RousseltO365Con18 - Git and GitHub - Rick van Rousselt
O365Con18 - Git and GitHub - Rick van Rousselt
 
FOSDEM 2017: GitLab CI
FOSDEM 2017:  GitLab CIFOSDEM 2017:  GitLab CI
FOSDEM 2017: GitLab CI
 
Juc boston2014.pptx
Juc boston2014.pptxJuc boston2014.pptx
Juc boston2014.pptx
 
Git Educated About Git - 20 Essential Commands
Git Educated About Git - 20 Essential CommandsGit Educated About Git - 20 Essential Commands
Git Educated About Git - 20 Essential Commands
 
Intro to git and git hub
Intro to git and git hubIntro to git and git hub
Intro to git and git hub
 
沒有 GUI 的 Git
沒有 GUI 的 Git沒有 GUI 的 Git
沒有 GUI 的 Git
 
Kubeflow Development Environment
Kubeflow Development EnvironmentKubeflow Development Environment
Kubeflow Development Environment
 
Git for Android Developers
Git for Android DevelopersGit for Android Developers
Git for Android Developers
 
Git and Github workshop
Git and Github workshopGit and Github workshop
Git and Github workshop
 
How we scaled git lab for a 30k employee company
How we scaled git lab for a 30k employee companyHow we scaled git lab for a 30k employee company
How we scaled git lab for a 30k employee company
 
リバースプロキシで webサーバを集約 ついでにdocker化しよう
リバースプロキシでwebサーバを集約ついでにdocker化しようリバースプロキシでwebサーバを集約ついでにdocker化しよう
リバースプロキシで webサーバを集約 ついでにdocker化しよう
 
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 GolangCOSCUP 2016: Project 52 每週一個小專案來學習 Golang
COSCUP 2016: Project 52 每週一個小專案來學習 Golang
 
Acceptance testing plone sites and add ons with robot framework and selenium
Acceptance testing plone sites and add ons with robot framework and seleniumAcceptance testing plone sites and add ons with robot framework and selenium
Acceptance testing plone sites and add ons with robot framework and selenium
 
Git 101 for Beginners
Git 101 for Beginners Git 101 for Beginners
Git 101 for Beginners
 
Robot framework
Robot frameworkRobot framework
Robot framework
 
Ci system part i
Ci system part iCi system part i
Ci system part i
 
Teaching a Designer to Use GitHub
Teaching a Designer to Use GitHubTeaching a Designer to Use GitHub
Teaching a Designer to Use GitHub
 
A Ci Experience
A Ci ExperienceA Ci Experience
A Ci Experience
 
Володимир Дубенко "Node.js for desktop development (based on Electron library)"
Володимир Дубенко "Node.js for desktop development (based on Electron library)"Володимир Дубенко "Node.js for desktop development (based on Electron library)"
Володимир Дубенко "Node.js for desktop development (based on Electron library)"
 

Viewers also liked (8)

CURRICULUM
CURRICULUMCURRICULUM
CURRICULUM
 
Colour corrector media
Colour corrector mediaColour corrector media
Colour corrector media
 
50 cosas 33 - 34 - luisa henríquez
50 cosas   33 - 34 - luisa henríquez50 cosas   33 - 34 - luisa henríquez
50 cosas 33 - 34 - luisa henríquez
 
Catalogo Autos Nuevos
Catalogo Autos NuevosCatalogo Autos Nuevos
Catalogo Autos Nuevos
 
El desafío de vivir en familia en la diversidad
El desafío de vivir en familia en la diversidadEl desafío de vivir en familia en la diversidad
El desafío de vivir en familia en la diversidad
 
ФОРМУВАННЯ ЛІНГВІСТИЧНОЇ ТЕРМІНОЛОГІЇ В УЧНІВ ОСНОВНОЇШКОЛИ ПІД ЧАС ВИВЧЕННЯ ...
ФОРМУВАННЯ ЛІНГВІСТИЧНОЇ ТЕРМІНОЛОГІЇ В УЧНІВ ОСНОВНОЇШКОЛИ ПІД ЧАС ВИВЧЕННЯ ...ФОРМУВАННЯ ЛІНГВІСТИЧНОЇ ТЕРМІНОЛОГІЇ В УЧНІВ ОСНОВНОЇШКОЛИ ПІД ЧАС ВИВЧЕННЯ ...
ФОРМУВАННЯ ЛІНГВІСТИЧНОЇ ТЕРМІНОЛОГІЇ В УЧНІВ ОСНОВНОЇШКОЛИ ПІД ЧАС ВИВЧЕННЯ ...
 
Embedded Systems: Lecture 14: Introduction to GNU Toolchain (Binary Utilities)
Embedded Systems: Lecture 14: Introduction to GNU Toolchain (Binary Utilities)Embedded Systems: Lecture 14: Introduction to GNU Toolchain (Binary Utilities)
Embedded Systems: Lecture 14: Introduction to GNU Toolchain (Binary Utilities)
 
Empresas en RD
Empresas en RDEmpresas en RD
Empresas en RD
 

Similar to The Ultimate Titanium CLI Toolchain

Codestrong 2012 breakout session exploring the new titanium command line in...
Codestrong 2012 breakout session   exploring the new titanium command line in...Codestrong 2012 breakout session   exploring the new titanium command line in...
Codestrong 2012 breakout session exploring the new titanium command line in...
Axway Appcelerator
 
enjoy sublime plugin
enjoy sublime pluginenjoy sublime plugin
enjoy sublime plugin
Lim Hyung-Joo
 

Similar to The Ultimate Titanium CLI Toolchain (20)

DEVNET-2006 Coding 210: Parsing JSON in C++
DEVNET-2006	Coding 210: Parsing JSON in C++DEVNET-2006	Coding 210: Parsing JSON in C++
DEVNET-2006 Coding 210: Parsing JSON in C++
 
How do I Write Testable Javascript so I can Test my CF API on Server and Client
How do I Write Testable Javascript so I can Test my CF API on Server and ClientHow do I Write Testable Javascript so I can Test my CF API on Server and Client
How do I Write Testable Javascript so I can Test my CF API on Server and Client
 
Introduction to Robot Framework
Introduction to Robot FrameworkIntroduction to Robot Framework
Introduction to Robot Framework
 
Barcamp Bangkhen :: Robot Framework
Barcamp Bangkhen :: Robot FrameworkBarcamp Bangkhen :: Robot Framework
Barcamp Bangkhen :: Robot Framework
 
DEVNET-2002 Coding 201: Coding Skills 201: Going Further with REST and Python...
DEVNET-2002	Coding 201: Coding Skills 201: Going Further with REST and Python...DEVNET-2002	Coding 201: Coding Skills 201: Going Further with REST and Python...
DEVNET-2002 Coding 201: Coding Skills 201: Going Further with REST and Python...
 
Codestrong 2012 breakout session exploring the new titanium command line in...
Codestrong 2012 breakout session   exploring the new titanium command line in...Codestrong 2012 breakout session   exploring the new titanium command line in...
Codestrong 2012 breakout session exploring the new titanium command line in...
 
Dev, Staging & Production Workflow with Gitify (at MODXpo 2015 in Munich)
Dev, Staging & Production Workflow with Gitify (at MODXpo 2015 in Munich)Dev, Staging & Production Workflow with Gitify (at MODXpo 2015 in Munich)
Dev, Staging & Production Workflow with Gitify (at MODXpo 2015 in Munich)
 
enjoy sublime plugin
enjoy sublime pluginenjoy sublime plugin
enjoy sublime plugin
 
[db tech showcase 2015 Sapporo HOKKAIDO] MySQL as document database!?
[db tech showcase 2015 Sapporo HOKKAIDO] MySQL as document database!?[db tech showcase 2015 Sapporo HOKKAIDO] MySQL as document database!?
[db tech showcase 2015 Sapporo HOKKAIDO] MySQL as document database!?
 
.NET6.pptx
.NET6.pptx.NET6.pptx
.NET6.pptx
 
Git Obstacle Course: Stop BASHing your head and break down the basics
Git Obstacle Course: Stop BASHing your head and break down the basicsGit Obstacle Course: Stop BASHing your head and break down the basics
Git Obstacle Course: Stop BASHing your head and break down the basics
 
Titanium 3.2 CLI - TiAppCamp2 - 11/2/2013
Titanium 3.2 CLI - TiAppCamp2 - 11/2/2013Titanium 3.2 CLI - TiAppCamp2 - 11/2/2013
Titanium 3.2 CLI - TiAppCamp2 - 11/2/2013
 
IOT
IOTIOT
IOT
 
Custom workflow in sharepoint
Custom workflow in sharepointCustom workflow in sharepoint
Custom workflow in sharepoint
 
Penny coventry fiddler-spsbe23
Penny coventry fiddler-spsbe23Penny coventry fiddler-spsbe23
Penny coventry fiddler-spsbe23
 
Oracle Keynote from JMagghreb 2014
Oracle Keynote from JMagghreb 2014Oracle Keynote from JMagghreb 2014
Oracle Keynote from JMagghreb 2014
 
Practical Git - NYC Code Camp
Practical Git - NYC Code CampPractical Git - NYC Code Camp
Practical Git - NYC Code Camp
 
Switching to Git
Switching to GitSwitching to Git
Switching to Git
 
How do I write Testable Javascript so I can Test my CF API on Server and Client
How do I write Testable Javascript so I can Test my CF API on Server and ClientHow do I write Testable Javascript so I can Test my CF API on Server and Client
How do I write Testable Javascript so I can Test my CF API on Server and Client
 
Hadoop Demystified + Automation Smackdown! Austin JUG June 24 2014
Hadoop Demystified + Automation Smackdown!  Austin JUG June 24 2014Hadoop Demystified + Automation Smackdown!  Austin JUG June 24 2014
Hadoop Demystified + Automation Smackdown! Austin JUG June 24 2014
 

More from Fokke Zandbergen

More from Fokke Zandbergen (20)

Building the (Support) Robot at Zapier
Building the (Support) Robot at ZapierBuilding the (Support) Robot at Zapier
Building the (Support) Robot at Zapier
 
Lessons from helping developers integrate 1,000 APIs with Zapier
Lessons from helping developers integrate 1,000 APIs with ZapierLessons from helping developers integrate 1,000 APIs with Zapier
Lessons from helping developers integrate 1,000 APIs with Zapier
 
We are all Remote Advocates
We are all Remote AdvocatesWe are all Remote Advocates
We are all Remote Advocates
 
Cross-platform Native App ontwikkeling met Appcelerator
Cross-platform Native App ontwikkeling met AppceleratorCross-platform Native App ontwikkeling met Appcelerator
Cross-platform Native App ontwikkeling met Appcelerator
 
Building Native Mobile Apps using Javascript with Titanium
Building Native Mobile Apps using Javascript with TitaniumBuilding Native Mobile Apps using Javascript with Titanium
Building Native Mobile Apps using Javascript with Titanium
 
Getting Started with Titanium & Alloy
Getting Started with Titanium & AlloyGetting Started with Titanium & Alloy
Getting Started with Titanium & Alloy
 
Cross-Platform Native Apps with JavaScript
Cross-Platform Native Apps with JavaScriptCross-Platform Native Apps with JavaScript
Cross-Platform Native Apps with JavaScript
 
Titanium: Develop Native Mobile Apps with JavaScript
Titanium: Develop Native Mobile Apps with JavaScriptTitanium: Develop Native Mobile Apps with JavaScript
Titanium: Develop Native Mobile Apps with JavaScript
 
Appcelerator OSS & Platform
Appcelerator OSS & PlatformAppcelerator OSS & Platform
Appcelerator OSS & Platform
 
Platform 4.0 Meetup Launch Event
Platform 4.0 Meetup Launch EventPlatform 4.0 Meetup Launch Event
Platform 4.0 Meetup Launch Event
 
Appcelerator Alloy MVC
Appcelerator Alloy MVCAppcelerator Alloy MVC
Appcelerator Alloy MVC
 
Getting ready for iOS 8 & iPhone 6
Getting ready for iOS 8 & iPhone 6Getting ready for iOS 8 & iPhone 6
Getting ready for iOS 8 & iPhone 6
 
Titanium Community Toolkit Showcase
Titanium Community Toolkit ShowcaseTitanium Community Toolkit Showcase
Titanium Community Toolkit Showcase
 
Titanium Alloy Tutorial
Titanium Alloy TutorialTitanium Alloy Tutorial
Titanium Alloy Tutorial
 
5 app alternatieven #AIB2013
5 app alternatieven #AIB20135 app alternatieven #AIB2013
5 app alternatieven #AIB2013
 
Apps voor kerken #Kerk2013
Apps voor kerken #Kerk2013Apps voor kerken #Kerk2013
Apps voor kerken #Kerk2013
 
TiNy #TiAppCamp
TiNy #TiAppCampTiNy #TiAppCamp
TiNy #TiAppCamp
 
Internetmarketing
InternetmarketingInternetmarketing
Internetmarketing
 
Alloy Tips & Tricks #TiLon
Alloy Tips & Tricks #TiLonAlloy Tips & Tricks #TiLon
Alloy Tips & Tricks #TiLon
 
Alloy #DMC13
Alloy #DMC13Alloy #DMC13
Alloy #DMC13
 

Recently uploaded

Obat Penggugur Kandungan Di Apotik Kimia Farma (087776558899)
Obat Penggugur Kandungan Di Apotik Kimia Farma (087776558899)Obat Penggugur Kandungan Di Apotik Kimia Farma (087776558899)
Obat Penggugur Kandungan Di Apotik Kimia Farma (087776558899)
Cara Menggugurkan Kandungan 087776558899
 

Recently uploaded (6)

Satara Call girl escort *74796//13122* Call me punam call girls 24*7hour avai...
Satara Call girl escort *74796//13122* Call me punam call girls 24*7hour avai...Satara Call girl escort *74796//13122* Call me punam call girls 24*7hour avai...
Satara Call girl escort *74796//13122* Call me punam call girls 24*7hour avai...
 
Android Application Components with Implementation & Examples
Android Application Components with Implementation & ExamplesAndroid Application Components with Implementation & Examples
Android Application Components with Implementation & Examples
 
Obat Penggugur Kandungan Di Apotik Kimia Farma (087776558899)
Obat Penggugur Kandungan Di Apotik Kimia Farma (087776558899)Obat Penggugur Kandungan Di Apotik Kimia Farma (087776558899)
Obat Penggugur Kandungan Di Apotik Kimia Farma (087776558899)
 
Mobile Application Development-Android and It’s Tools
Mobile Application Development-Android and It’s ToolsMobile Application Development-Android and It’s Tools
Mobile Application Development-Android and It’s Tools
 
Mobile App Penetration Testing Bsides312
Mobile App Penetration Testing Bsides312Mobile App Penetration Testing Bsides312
Mobile App Penetration Testing Bsides312
 
Mobile Application Development-Components and Layouts
Mobile Application Development-Components and LayoutsMobile Application Development-Components and Layouts
Mobile Application Development-Components and Layouts
 

The Ultimate Titanium CLI Toolchain