index.html 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <title>Converse.js</title>
  5. <meta charset="utf-8">
  6. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  7. <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  8. <meta name="description" content="Converse.js: A free chat client for your website" />
  9. <meta name="author" content="JC Brand" />
  10. <meta name="keywords" content="xmpp chat webchat converse.js" />
  11. <link rel="shortcut icon" type="image/ico" href="css/images/favicon.ico"/>
  12. <link type="text/css" rel="stylesheet" media="screen" href="components/bootstrap/dist/css/bootstrap.min.css" />
  13. <link type="text/css" rel="stylesheet" media="screen" href="components/fontawesome/css/font-awesome.min.css" />
  14. <link type="text/css" rel="stylesheet" media="screen" href="css/theme.css" />
  15. <link type="text/css" rel="stylesheet" media="screen" href="css/converse.min.css" />
  16. <script type="text/javascript" src="analytics.js"></script>
  17. <!-- Only for development: <script data-main="main" src="components/requirejs/require.js"></script> -->
  18. <![if gte IE 9]>
  19. <script src="builds/converse.website.min.js"></script>
  20. <![endif]>
  21. <!--[if lt IE 9]>
  22. <script src="builds/converse.website-no-otr.min.js"></script>
  23. <![endif]-->
  24. </head>
  25. <body id="page-top" data-spy="scroll" data-target=".navbar-custom">
  26. <nav class="navbar navbar-custom navbar-fixed-top" role="navigation">
  27. <div class="container">
  28. <div class="navbar-header page-scroll">
  29. <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-main-collapse">
  30. <i class="fa fa-bars"></i>
  31. </button>
  32. <a class="navbar-brand" href="#page-top">
  33. <i class="fa fa-play-circle"></i> <span class="light">Home</span>
  34. </a>
  35. </div>
  36. <!-- Collect the nav links, forms, and other content for toggling -->
  37. <div class="collapse navbar-collapse navbar-right navbar-main-collapse">
  38. <ul class="nav navbar-nav">
  39. <!-- Hidden li included to remove active class from about link when scrolled up past about section -->
  40. <li class="hidden">
  41. <a href="#page-top"></a>
  42. </li>
  43. <li class="page-scroll">
  44. <a href="#about">About</a>
  45. </li>
  46. <li class="page-scroll">
  47. <a href="#features">Features</a>
  48. </li>
  49. <!--
  50. <li class="page-scroll">
  51. <a href="#donate">Donate</a>
  52. </li>
  53. -->
  54. <li class="page-scroll">
  55. <a href="#contact">Contact</a>
  56. </li>
  57. <li>
  58. <a href="/docs/html/index.html">Documentation</a>
  59. </li>
  60. <li>
  61. <a href="https://github.com/jcbrand/converse.js/releases" class="button" target="_blank">Download</a>
  62. </li>
  63. </ul>
  64. </div>
  65. <!-- /.navbar-collapse -->
  66. </div>
  67. <!-- /.container -->
  68. </nav>
  69. <section class="intro">
  70. <div class="intro-body">
  71. <div class="container">
  72. <div class="row">
  73. <div class="col-md-8 col-md-offset-2">
  74. <h1 class="brand-heading"><i class="icon-conversejs"></i>Converse.js</h1>
  75. <p class="intro-text">A free and open-source XMPP chat client for your website</p>
  76. <div class="page-scroll">
  77. <a href="#about" class="btn btn-default btn-lg"><span class="btn-text">Learn More</span></a>
  78. </div>
  79. </div>
  80. </div>
  81. <div class="row">
  82. <div class="col-md-8 col-md-offset-2 banner-social-buttons">
  83. <ul class="list-inline">
  84. <li><a href="https://twitter.com/jcopkode" class="btn btn-circle btn-lg" title="Twitter" target="_blank"><i class="fa fa-twitter"></i></a>
  85. </li>
  86. <li><a href="https://github.com/jcbrand/converse.js" class="btn btn-circle btn-lg" title="GitHub" target="_blank"><i class="fa fa-github"></i></a>
  87. </li>
  88. </ul>
  89. </div>
  90. </div>
  91. </div>
  92. </div>
  93. </section>
  94. <section id="about" class="container content-section text-center">
  95. <div class="row">
  96. <div class="col-lg-8 col-lg-offset-2">
  97. <h2><strong>Converse.js</strong> is a free and open source chat client that runs in your browser. It can be integrated into any website.</h3>
  98. <p>Similar to <a href="https://www.facebook.com/sitetour/chat.php" target="_blank">Facebook chat</a> but it also supports multi-user chatrooms.</p>
  99. <p>
  100. <strong>Converse.js</strong> can connect to any accessible <a href="http://xmpp.org" target="_blank">XMPP/Jabber</a> server,
  101. either from a <a href="https://xmpp.net/directory.php">public provider</a>, or one you have set up yourself.
  102. </p>
  103. <p>
  104. It's possible to enable single-site-login, whereby users already authenticated in your website will also automatically be logged in on the chat server.
  105. Please refer to the <strong><a href="/docs/html/index.html">documentation</a></strong> for more info.
  106. </p>
  107. </div>
  108. </div>
  109. </section>
  110. <section class="features-section content-section" id="features">
  111. <div class="container">
  112. <div class="row">
  113. <div class="col-lg-4">
  114. <section>
  115. <span class="feature-icon page-scroll"><a class="fa fa-globe" href="#features" title="Integration"></a></span>
  116. <header>
  117. <h2>Integration</h2>
  118. </header>
  119. <ul class="integration">
  120. <li><a href="http://github.com/collective/collective.xmpp.chat" target="_blank">Plone</a></li>
  121. <li><a href="https://pypi.python.org/pypi/django-conversejs" target="_blank">Django</a></li>
  122. <li><a href="https://github.com/priyadi/roundcube-converse.js-xmpp-plugin" target="_blank">Roundcube</a></li>
  123. <li><a href="http://wordpress.org/plugins/conversejs" target="_blank">Wordpress</a></li>
  124. <li><a href="https://github.com/jcbrand/patterns.converse" target="_blank">Patternslib</a></li>
  125. <li><a href="https://github.com/keensoft/alfresco-js-chat-share" target="_blank">Alfresco</a></li>
  126. </ul>
  127. </section>
  128. </div>
  129. <div class="col-lg-4">
  130. <section>
  131. <span class="feature-icon page-scroll"><a class="fa fa-check-square-o" href="#features" title="Features"></a></span>
  132. </section>
  133. <header>
  134. <h2>Features</h2>
  135. </header>
  136. <ul class="features">
  137. <li>Single-user chat</li>
  138. <li>Multi-user chatrooms (<a href="http://xmpp.org/extensions/xep-0045.html" target="_blank">XEP 45</a>)</li>
  139. <li>vCard support (<a href="http://xmpp.org/extensions/xep-0054.html" target="_blank">XEP 54</a>)</li>
  140. <li>Service discovery (<a href="http://xmpp.org/extensions/xep-0030.html" target="_blank">XEP 30</a>)</li>
  141. <li>Contact rosters and groups</li>
  142. <li>Contact subscriptions</li>
  143. <li>Accept or decline contact requests</li>
  144. <li>Roster item exchange (<a href="http://xmpp.org/extensions/tmp/xep-0144-1.1.html" target="_blank">XEP 144</a>)</li>
  145. <li>Chat statuses (online, busy, away, offline)</li>
  146. <li>Custom status messages</li>
  147. <li>Typing notifications</li>
  148. <li>Third person messages (/me )</li>
  149. <li>Translated into 15 languages</li>
  150. <li>Off-the-record encryption
  151. </ul>
  152. </div>
  153. <div class="col-lg-4">
  154. <section>
  155. <span class="feature-icon page-scroll"><a class="fa fa-video-camera" href="#features" title="Screencasts"></a></span>
  156. <header>
  157. <h2>Screencasts</h2>
  158. </header>
  159. <ul class="screencasts">
  160. <li>
  161. <a href="http://opkode.com/media/blog/instant-messaging-for-plone-with-javascript-and-xmpp" target="_blank">
  162. In a Plone site
  163. </a>
  164. </li>
  165. <li>
  166. <a href="http://opkode.com/media/blog/2013/04/02/converse.js-xmpp-instant-messaging-with-javascript" target="_blank">
  167. Chatting with buddies from Jabber.org and Gmail
  168. </a>
  169. </li>
  170. <li>
  171. <a href="https://opkode.com/media/blog/2013/11/11/conversejs-otr-support" target="_blank">
  172. Off-the-record encryption
  173. </a>
  174. </li>
  175. </ul>
  176. </section>
  177. </div>
  178. </div>
  179. </div>
  180. </section>
  181. <!--
  182. <section id="donate" class="donate-section content-section text-center">
  183. <div class="container">
  184. <div class="row">
  185. <div class="col-lg-8 col-lg-offset-2">
  186. <h3>Donate</h3>
  187. <p class="bitcoin-header">Most of the work done on <strong>converse.js</strong> is unpaid and a labor of love.</p>
  188. <p>Thanks to those have donated already.</p>
  189. <p class="bitcoin-header"><strong>Bitcoin</strong></p>
  190. <img src="css/images/bitcoin_qr_code.png"/>
  191. <p>16FsPqE9DhFTryxrUenpsGX4LJ1TPu8GqS</p>
  192. </div>
  193. </div>
  194. </div>
  195. </section>
  196. -->
  197. <section class="outro content-section" id="contact">
  198. <div class="intro-body">
  199. <div class="container">
  200. <div class="row">
  201. <div class="col-lg-8 col-lg-offset-2">
  202. <h2>Contact</h2>
  203. <ul class="contact">
  204. <li>Follow me on <a href="http://twitter.com/jcopkode" target="_blank">Twitter</a>.</li>
  205. <li>Chat with me via XMPP: <a href="xmpp:jc@opkode.com" class="xmpp JSnocheck" title="XMPP/Jabber">jc@opkode.com</a>.</li>
  206. <li>For technical support, please write to the mailing list: <a href="mailto:conversejs@librelist.com">conversejs@librelist.com</a>.</li>
  207. <li>Or ask in the Converse.js chat room: <a href="xmpp:discuss@conference.conversejs.org" class="xmpp JSnocheck" title="Converse.js chat room">discuss@conference.conversejs.org</a>.</li>
  208. <li>Also check out the <a href="http://librelist.com/browser/conversejs" target="_blank">mailing list archives</a>.</li>
  209. <li>Please file <a target="_blank" href="https://github.com/jcbrand/converse.js/issues">bugs on Github</a>.</li>
  210. <li>I'm available for features and <a href="http://opkode.com/contact" target="_blank">consulting</a>.</li>
  211. </ul>
  212. </div>
  213. </div>
  214. </div>
  215. </div>
  216. </section>
  217. </body>
  218. <script>
  219. require(['converse'], function (converse) {
  220. (function () {
  221. /* XXX: This function initializes jquery.easing for the https://conversejs.org
  222. * website. This code is only useful in the context of the converse.js
  223. * website and converse.js itself is NOT dependent on it.
  224. */
  225. var $ = converse.env.jQuery;
  226. $(window).scroll(function() {
  227. if ($(".navbar").offset().top > 50) {
  228. $(".navbar-fixed-top").addClass("top-nav-collapse");
  229. } else {
  230. $(".navbar-fixed-top").removeClass("top-nav-collapse");
  231. }
  232. });
  233. //jQuery for page scrolling feature - requires jQuery Easing plugin
  234. $('.page-scroll a').bind('click', function(event) {
  235. var $anchor = $(this);
  236. $('html, body').stop().animate({
  237. scrollTop: $($anchor.attr('href')).offset().top
  238. }, 700, 'easeInOutExpo');
  239. event.preventDefault();
  240. });
  241. })();
  242. converse.initialize({
  243. bosh_service_url: 'https://conversejs.org/http-bind/', // Please use this connection manager only for testing purposes
  244. i18n: locales['en'], // Refer to ./locale/locales.js to see which locales are supported
  245. keepalive: true,
  246. message_carbons: true,
  247. play_sounds: true,
  248. roster_groups: true,
  249. show_controlbox_by_default: true,
  250. xhr_user_search: false
  251. });
  252. });
  253. </script>
  254. </html>