Notes on Developing the StatusNet Desktop Client
Like other services, we need official go-to clients we can point new users to, ones that are guaranteed to work with and be in sync with the latest version of StatusNet server. We also want clients that we can white label and allow our corporate customers to repackage.
While we've generally had success getting other developers of microblogging clients to add support for our service, with a few exceptions we haven't seen StatusNet specific or StatusNet focused clients for the major platforms. StatusNet has unique features that we'd like to see expressed fully in clients, including groups, private instances, conversations and subscription tagging. We think the best way to get this done is to build clients with these features ourselves. We're hoping our clients can be reference implementations for other developers.
Another important reason for developing our own set of clients is to help evolve the StatusNet API. Building a client is a good way to learn what does and doesn't work in an API, and shake out bugs. With the upgrade of our federation system to OStatus, our Atom feeds have become especially rich -- rich enough that client applications can get most of the data they need from them. While the Twitter API remains the de facto standard and we'll continue to support it, we'd also like to move ahead with our own API design. We're going to take this opportunity to expand our Atom-based API even further. StatusNet Desktop gets most of its data from StatusNet's Atom feeds, and in the future we hope our clients will be able to post using the AtomPub protocol.
StatusNet Deskop and all of our other clients are licensed under the Apache 2.0 license. We chose this more liberal license because we wanted to encourage the most wide spread use, reuse and adoption of the code.
You can help
I'm also StatusNet's developer relations manager. If you have ideas, concerns, or feature requests for the clients or the StatusNet API, please feel free to email me (zach [at] status.net) or contact me on Identi.ca. Interested developers are always welcome to pitch in. The source code for the StatusNet clients is located on Gitorious. Below are links to the source, our new bug tracker and the StatusNet-Dev mailing list.
- Bug tracker