View
979
Download
2
Category
Preview:
DESCRIPTION
An initial walkthrough and initial of how rapiddev works and why it is a must have tool for every titanium mobile developer.
Citation preview
Develop Titanium apps at the speed of the web!
Welcome to RapidDev!Welcome to RapidDev!
Develop Titanium apps at the speed of the web!
Matt Apperson - Apperson Labs founderMay 10, 2014
appersonlabs.com
Who Am I?
• Owner of Apperson Labs
• Formerly an engineer at Appcelerator
• Born from PHP
• Father & husband
• We work white label with agencies 75% of the time
• Mobile is our life blood
• Specialize in Titanium
• Native? Yea we do that!
• NodeJS is great too!
• Lovers of open source
Who we are
Some companies we work with…
Agencies we partner with…
For too long…
Mobile dev SUCKED
We had some options…
!‣ Live reload
‣ Near instant deploy
‣ REPL to test
‣ Easy to share
‣ Freely available and open
source
!!
‣ 5 sec - 1+ min reloads
‣ deploy takes hours
‣ Compile code
‣ TestFlight is the best?
What if native/Ti had the
Flexibility of web
Don’t we have this already?Don’t we have this already?
TiShadow
LiveView
‣ The original instant reload
‣ JS / compiler based
‣ Has REPL
‣ Is free/OSS
‣ Provided by Appc
‣ JS + native
‣ Integrated with studio
‣ Support provided via Appc platform
RapidDev
‣ 100% native
‣ Use any unit testing framework
‣ ZERO JS code changes/insertions
‣ is free/OSS
‣ Feels, acts & behaves exactly like using Titanium
How RapidDev works
•Builds a base native app with any required modules, and
ALL the core Ti code
• Uses a module to change file paths to read from the
document directory
• Opens a socket connection to your dev computer
•Files transfer over on save and reloads the app, clearing
caches
•Use ANY testing framework, even your own
How RapidDev does NOT work…
•No JS was changed/hacked/replaced
•No requests had to be made to the server on file load
•No performance loss
•No extra abstraction
•Just like a regular native Ti app. Making testing &
debugging easier and more reliable
How to install RapidDev
$ npm install rapiddev -g
*You might need to use sudo…
Live Reload
So easy to use
$ ti build --p iOS --rd
Want to stop using RapidDev?
$ ti build --p iOS
Dev Directory
No need to add/remove files…
Unit Testing
Running unit tests
ti build --p iOS --test
ti build --p iOS --test --rd
ti build --p iOS --test “login”
RapidDev is not perfect (yet!)
1)No android support…
2) No REPL
3) Only works via the Ti CLI
4) It does not have it’s own logo :(
What comes next?More then live reload…
ANDROID SUPPORT!!!•Harder then expected to do in native Java
•Will use a modified “fastdev”
•Will match RapidDev for iOS features
CLI / REPL Support RapidDev.next $
• Be able to do things like: $ ti exec file.js -p iOS
• Run arbitrary code such as $ ti repl > alert(‘run code in active app’);
• Some native modules need a full app to test or need to run on device…
$ ti full-build
• Run RapidDev in server only mode $ rapiddev start
RapidDev (Current Protocol)
File change
Copy file
Reload app
All files changed
Copy one file
Reload app
Vanilla Titanium App CoffeeScript & Alloy Apps
RapidDev.next (Improved Protocol)
All Titanium Apps
File change
Copy file
Reload app
Are there more files?
NO
YES
Confirm receipt
To instantly return to where you were
*Checkout the Apperson Labs / Codex Labs workshop tomorrow at 4:30
RapidDev “Instant Return”
ti build --rd --return “Rating”
Develop Titanium apps at the speed of the web!
Welcome to RapidDev!
matt@appersonlabs.com appersonlabs.com @appersonlabs / @mattapperson
Recommended