Kaiwa, is a modern and opensource XMPP web client that deserve its article!
You know, XMPP the protocol, alias Jabber.Probably less and less people are using it now (I still do).
When you want to install a XMPP server, you usually install Prosody, or Ejabberd or OpenFire and probably you install Jappix, if you want a web interface. (That will deserve its own article). Or you probably just go for Slack and others popular alternatives?
But I found a recent web client, called Kaiwa. It’s actually a fork of Otalk and have all you need to manage your chat.
Very complete, Kaiwa includes a rooms management, archives, private messages, user management, multiple clients, notifications, avatar, embedded objects, etc… all the needed features for a simple chat.
However, XMPP have been heavily challenged on several points compared to recent commercial solutions. Good news is, most of them have been solved through extensions to the protocol (Called XEPs). Kaiwa, fortunately support them all and allow you a greater experience such as, “Message History Syncing” across devices, “Active Chat Syncing” to make sure you will not have any sync error when using several clients at the same time, improved connection, “Message Correction” to edit your messages afterwards, etc…
Easy to install, Kaiwa will provide you a great experience, similar or better to proprietary alternatives.Ready to give it shot? Here is how to install Kaiwa on Debian / Ubuntu style of distribution.
Obviously, you need first to have a XMPP server. This tutorial will not cover this part.
1) Install uuid-dev and libldap2-dev
Uuid-dev and libldap2-dev are needed to have Kaiwa fully operational. In root (or with sudo in front), run:
apt-get install uuid-dev libldap2-dev
2) Clone their latest Git repository
Still in root:
cd /var/www git clone https://github.com/digicoop/kaiwa.git
3) Install NodeJS and NPM
– If you use Ubuntu, simple run (as root)
apt-get install nodejs npm
– For Debian users (Still on Wheezy? if different, just adapt), you can install nodejs from wheezy-backports. If you don’t have them in your source.list, you will need to add the line
deb http://http.debian.net/debian wheezy-backports main
to your /etc/apt/source.list file, then run
to update the packages list and then install nodejs with the following command:
apt-get install nodejs nodejs-legacy curl
and for npm, you can use the installer (still in root)
curl https://www.npmjs.com/install.sh | sh
4) Install all dependencies using NPM
cd kaiwa npm install
5) Launch Kaiwa
Kaiwa should now be accessible from http://YourIP:8000/
You can change the default configuration (port, domain, XMPP server,…) inside the file called dev_config.json.
You should now have a working Kaiwa instance.
If you have any question, feel free to ask them here or directly on their issue tracker.