''strophe'' - ''a structural division of a poem containing stanzas of varying line-length'' '''Strophe''' is a family of libraries for writing XMPP clients. '''libstrophe''' is a C library with minimal dependencies. '''Strophe.js''' is a pure-!JavaScript library. The implementations are production ready, well documented, easy to use, and easy to extend. '''Strophe''' provides the following features: * XMPP compliant ([StropheJsCompatibility Strophe.js compatibility matrix] [LibstropheCompatibility libstrophe compatibility matrix]) * Browser and platform agnostic (Strophe.js) * TLS support via SChannel, GNUTLS, or OpenSSL (libstrophe) * SASL authentication using ANONYMOUS, DIGEST-MD5, or PLAIN methods as well as legacy jabber authentication * Customizable logging and memory management You can also view strophe UseCases to see it in action! === Documentation === [http://code.stanziq.com/strophe/strophejs/doc/1.0.1/ Strophe.js 1.0.1 API Documentation] The book [http://professionalxmpp.com Professional XMPP Programming with JavaScript and jQuery] is also available, which covers Strophe.js in detail in the context of web applications. Getting a working setup for strophe.js can be difficult, most due to Javascript's [https://developer.mozilla.org/en/Same_origin_policy_for_JavaScript Same Origin Policy]. These guides might help you get you get set up: * [http://gist.github.com/272956 How to echobot with XMPP, BOSH, and Strophe] * [http://anders.conbere.org/blog/2009/09/29/get_xmpp_-_bosh_working_with_ejabberd_firefox_and_strophe/ Get XMPP - BOSH working with Ejabberd, Firefox and Strophe] === Download === The latest stable release of Strophe.js is 1.0.1: * [http://code.stanziq.com/strophe/strophejs/releases/strophejs-1.0.1.zip strophejs-1.0.1.zip] * [http://code.stanziq.com/strophe/strophejs/releases/strophejs-1.0.1.tar.gz strophejs-1.0.1.tar.gz] You download development snapshots of the latest code for libstrophe and Strophe.js from: * [http://code.stanziq.com/cgit/strophe/libstrophe/snapshot/libstrophe-master.zip libstrophe-master.zip] * [http://code.stanziq.com/cgit/strophe/strophejs/snapshot/strophejs-master.zip strophejs-master.zip] * [http://code.stanziq.com/cgit/strophe/libstrophe/snapshot/libstrophe-master.tar.gz libstrophe-master.tar.gz] * [http://code.stanziq.com/cgit/strophe/strophejs/snapshot/strophejs-master.tar.gz strophejs-master.tar.gz] === Repositories === You can also access the libstrophe and Strophe.js Git repositories: libstrophe {{{ git clone git://code.stanziq.com/libstrophe }}} strophejs {{{ git clone git://code.stanziq.com/strophejs }}} Both projects are also available on [http://github.com GitHub]: * [http://github.com/metajack/strophejs Strophe.js on GitHub] * [http://github.com/metajack/libstrophe libstrophe on GitHub] === Bug Reports, Contributing and Feedback === Bugs and Feedback can ["be"] reported by clicking on [http://code.stanziq.com/strophe/newticket New Ticket] in the navigation bar above. Please be as detailed as possible when submitting tickets. You can also join and participate on the Strophe mailing lists: * [http://groups.google.com/group/strophe Strophe users list] * [http://groups.google.com/group/strophe-dev Strophe developers list] The easiest way to contribute code is to fork the project on !GitHub and issue a pull request or open a ticket in this tracker referencing your code.