Last week I got in contact with Matt Apperson as he’s been a great asset to the Titanium community & I’ve heard a few rumors about some great upcoming modules that he was building. See below for the interview:

Hi, thanks for taking part, Matt.
No problem, thanks for asking me.

I’ve heard you recently left Appcelerator, are you on to bigger & better things?
I think so. Moving on has allowed me to build some projects I have wanted to build for a while. It has also allowed me to take on some freelance work in the community as well.

What are your plans for the future, will you still be involved with Titanium?
Absolutely! At the moment I am working on several open source projects. The first I released after leaving Appcelerator was MakeTi, a CLI tool to make building apps with titanium easier, and faster. MakeTi also added things like direct uploads to TestFlight to make sharing builds easier. I then released TiUIWarapper, currently in a beta state but very stable…it solves nearly all the issues found here and more! I am about to release TiShards, a project that Appcelerator and several community members are contributing to. It will be an open source package manager for Titanium Mobile… then I have a couple other projects I will be releasing shortly after that.

Sounds like you’ve been busy busy, can we go through each of these projects?
Sure thing.

Thanks. MakeTi – this is used for building applications from the command line, is this right?

“..all Titanium developers should use TiUIWrapper. It is nearly as easy to use as the native APIs.”

Will this make Titanium Studio obsolete?
No, for some people, especially those new to Titanium… MakeTi is not the best option as for them studio will be better. Also Studio has debugging, something a CLI tool cant really do (at least not well). But for those who like to manage their own tool set, MakeTi is the way to go for sure.

Impressive stuff Matt! So is this compatible across all platforms & versions?
Currently MakeTi is for Mac only (though with very minor path tweaking it can work on Linux), I would be willing to port it to other platforms, but as of right now, I have not seen any demand for that. But it does work for any Titanium SDK.

I see you can use extra parameters like deploying to TestFlight, any road-maps to export to others?
Not at the moment, but I am taking requests.

Can you explain what the TiUiWrapper is please?
Sure. So a major “issue” with Titanium is that UI elements and really all Titanium objects are just that… TITANIUM objects, not JavaScript objects. The issue there being they lack abilities that JavaScript objects have like overwriting methods and extending via prototype. More importantly there are issues where if you add extra parameters to a Ti proxy object that are not part of the API, it can cause slow downs or crashes in your app.

TiUIWrapper fixes that by creating wrappers around the objects using a build plugin. This allows you to create an manipulate the Ti UI objects like they are native JS. fixing all the issues I just mentioned.

OK, is this more for the advanced Titanium developer then?
While the explanation is advanced for sure… all Titanium developers should use TiUIWrapper. It is nearly as easy to use as the native APIs. Also, for new developers, especially those who know JavaScript before starting Titanium… the proxy objects can be a major frustration, especially when they cause crashes trying to do what should be able to be done in JavaScript.

Thanks for clearing that up. What’s this TiShards about?
So Appcelerator has done a lot with the Appcelerator Marketplace. But there is still no place to go for open source scripts and projects… TiShards is a CLI based package manager to solve that issue. It is a lot like what the NodeJS community has with NPM.

Node Package Manager, seems at interesting concept. Are there any release date(s) for this?
No, not yet… but it should be very soon, like within the next few weeks.

Looking forward to it. Are there any other developments going on?
Not right now, but there are some in the pipes.

OK, thanks for taking the time to speak to us Matt.
No problem, it was fun chatting with you.

As you can see Matt has been super creative! We thank him for his contribution to the community & for taking part :)


MakeTi on Github | TiUiWrapper on Github

If you want to get involved or make a request to one off Matt’s modules – contact him via Twitter here.