[jdev] High level XMPP Javascript client

Theo Cushion theo at jivatechnology.com
Wed Apr 25 12:59:29 UTC 2012


Hello Everyone,

I've been working on a library called "Frabjous" for a little while now. It doesn't aim to replace clients like Strophe.js or JsJac, but instead be an ORM for the XMPP protocol. This is to enable better code reuse between projects and reduce the barrier to entry for implementing an XMPP based messaging solution in the browser.

The code is up on github:
	http://github.com/theozaurus/frabjous

Along with a demo which shows how the Ember key value bindings can build a UI with very little code:
	http://github.com/theozaurus/frabjous_demo 
	http://theozaurus.github.com/frabjous_demo

The project is tested using Jasmine to make it maintainable, and I'm splitting it up as best I can on a per XEP basis so that code can be added or removed with a minimum of fuss. I've also ported "equivalent-xml" to Javascript which may be of use to anyone dealing with testing, XML and Javascript. It can be found here:
	http://github.com/theozaurus/equivalent-xml-js

So far Frabjous can:
 - Deal with basic message types (message, presence) and turn those into contacts with threads etc
 - Generate and send stanzas with callback support (currently just a message method on a Contact)
 - Link errors received back to the original object

At the moment it doesn't actually hook int Strophe or JsJac, but to add this in will be simple. The focus has to been to demonstrate the concepts before the project is fleshed out.

I'd be really interested to hear any thoughts, criticism and if anyone else is attempting something similar or would like to get involved.

Cheers

Theo


More information about the JDev mailing list