We’ve been hard at work on Sencha.io, but it’s been a while since we’ve shared with the community updates on what we’ve been doing. So, we thought we’d take a moment to update folks on what’s new in the world of Sencha.io.
Through the winter and the spring, we’ve been focusing on making the service easier to use. Developers and community members who have been testing and trying to build apps on Sencha.io have been invaluable in providing feedback on the APIs, the features, and helping guide us to build a product that services their mobile app needs.
Our key areas of investment the last few months have been around simplifying the API, adding features to the current services and making them easier to learn. We’ve simplified APIs, added additional features to services like Login, and built out new examples that show you how easy it is to build applications that leverage Sencha.io.
h3. Service Updates
Underlying all of the APIs and the SDK are the core Sencha.io services and we’ve been working with input from the community on how to make them solve the most common problems, and add features to them were we’ve found them to be lacking.
* Login service now works with Facebook! We’ve hooked up Facebook auth directly into the login service, so you can start to have users login with their Facebook identity. Read on to see how easy it is.
* Developer Console (developer.sencha.io) has been refreshed to be faster and more responsive. We’re also starting work on some big updates to Developer Console to better expose the various features that the SDK and the APIs feature.
* We’ve renamed “Messages” in the API to “Channels”. We thought this name change better communicated the publish and subscribe nature of the messaging service. At their heart they remain the same. Put a JSON object in one end, get a JSON object out the other end.
* When your app is offline, any messages you place in a channel are now queued in local storage, so that next time your app is online, they’ll get pushed up to the cloud.
* Data stores can now be private or public. You can programmatically set their visibility via the API, and by default they’re private. Private means that only the user of the app can read or write to them, but when you share them publicly anybody with their ID can read/write to them.
* All of the services now send back a standard error object, so when you’re developing an application, you get a standard set of information back when something goes wrong. The information is actionable and specific so you can better understand what’s happening. As an added bonus, we anonymously track errors on our end for better monitoring of the service health.
h3. Better APIs and a Cleaner Sencha.io SDK
Our goal with cleaning up the APIs has been to make Sencha.io easier to use and to integrate in to your application. The various changes listed below make it more familiar to Sencha developers and streamline a lot of the most common application patterns.
* The Sencha.io SDK is now compatable with Sencha Touch 2, and the API has been cleaned up to be eaiser to use.
* Almost all services take fewer lines of code to accomplish the same thing, while retaining the same level of flexibility.
* We have a new class, called the Ext.io.Controller. It makes integrating Sencha.io in to a Sencha Touch 2 application much eaiser. All you need to do is add this controller in your app.js to your list of controllers, and it gets your app wired up to use Sencha.io for you. All the user registration and authentication is handled for you, including a view for a login screen so you get instant user authentication out of the box.
* We’ve also added a little UX called the authbutton (Ext.io.ux.AuthButton) that lets your user manually login and out.
h3. Examples in the SDK
The SDK download now includes three examples for you to base your applications on, or use as code samples:
* Messaging — a simple messaging app with both authenticated and non-authenticated users. This uses the Channels service and the Login service.
* Shared Location — use a user public data store and the built in location API to share user locations on a map component. This uses the Data service.
* Todos — a user private data store that lets users keep track of their tasks. This uses the Data and the Login service.
As you can see it’s been a busy few months for the team, and we’re excited about all the new features and enhancement we’ve been making!
For more information about how to get started, how to get the API, check out the documentation at http://docs.sencha.io/ and download the SDK. And if you’re totally brand new, our getting started guide will get you up and running in short order adding Sencha.io features to you Sencha Touch 2 application.
Last but not least: if you have any questions, you can find the engineering team in the Sencha.io forums. We’re excited to see what you’ll build!