In the last few weeks, as soon as I became a Twitter's user, I had an idea to create an API so that we could develop applications to get access to Twitter's information. This work started on studying the API from Twitter API website, in order to see how the things work. I got surprised how easy is to access this service - very straightforward. In a nutshell, the API is based on accessing a URL and passing some parameters and get the response. For some API's services, authentication is required, but it is not a big deal to manage.
Basically, Twitter API is splitted into two parts: Search and REST API. Search API is responsible for providing a search mechanism of tweets (a Twitter message), by submitting a query with some parameters (filters), e.g., search for all tweets submitted by a given user or that contains a given word/phrase. The REST API, in turn, provides means to submit tweets to Twitter.
So after studying the API, I started to design and code an API so that we could have access to Twitter API from our mobile devices. The idea is to have an structure such as Twitter API, with those two main components: one for search and other for submitting content.
This API was designed using just plain old Java language, so that we could have an API to run on many platforms. In other words, this API intends to run on any Java platform (e.g. Java ME, Android, Java SE, etc.). It is possible, because the interface for the developers is pure Java, however, the concrete classes are platform dependent.
Due to my short free time, until this moment, I have implemented the Search API services and for Java ME platform only. However, the API is totally functional and ready to be used. I am already planning to implement REST API and a support for Android. It is expected for the next release. In the meanwhile, download and try it. It is free! It is upon GPL-2.0 license.
You guys can download the binaries, source code and documentation from projects's website, which is hosted on Kenai project website. For while, the SVN repository is not available. I am still working on somethings, but soon you guys will be able to check out the code directly to your IDE, OK? In additional, you guys can also report bugs/improvements on our issue tracking tool (JIRA).
I hope you guys like this project. It is getting cool! In the next posts, I will post some code snippets on how to use the API.
See you in the next post...