Skip to main content

KandanApp, Open Source Alternative to HipChat

HipChat is a popular web service for instant messaging, chat rooms, searchable chat history and even image sharing. Their paid version also add video calling and screen sharing. It can be integrated with a large set of others popular services like Github, MailChimp, etc…usually used as a collaborative tool or for entreprise people, but it is a proprietary software and the change in their TOS did not make it easier….

If you are looking for an alternative, KandanApp is probably the closest of the alternatives.

kandan opensource hipchat

KandanApp, based on Rails, is a web based, persistent instant messaging client with a clean and userfriendly interface. Nothing to install from client side, it currently supports Firefox, Chrome and Safari. (No IE….)

With Drag n Drop file sharing, Desktop notification, several plugins, and full Emoji Support, it could a good tool for team, departments, …. to share ideas, code and files in real time.

You can give a try using their demo server.

Unfortunately, the project does not seems to be as active as it was before (latest blog post is from 2013, but the git repository is still maintained).

However, as you can see, several features are not implemented yet (Video conference, screen sharing, …), you will probably need to use a different platform if you really need it. (Although very different and not quite yet web based, Jitsi could may be suit you if you are just looking for a Skype alternative).

But KandanApp remains a good alternatives if it fit your needs.

Kandan opensource HipChat


As usual, here is how to install KandanApp on your server. (Assuming you have Ubuntu/Debian style of)



They actually have a good tutorial here, you could double check it if you wish.

1) Install the dependencies

In root, run:

2) Clone their latest git repository into your /var/www

3) Install the required gems

Should take several minutes to install all the needed gems.

4) Modify the config/database.yml (Optional)

For testing purpose, you don’t need to do it, but if you want to use it in production, you’ll need to edit config/database.yml to add something like this:

5) Bootstrap the install

6) Start the server

If no issue, you should be able to access to your Kandan instance through HTTP://YourIP:3000 and connect to the admin account using the default user “Admin” and password “kandanappadmin”

Kandan opensource hipchat login page

If you have any questions, I suggest you to visit their issue tracker.

Pod, collaborative tool with documents and todo list sharing

I wanted to share long ago this software, but it seems I never really found the time to do it. So here we are, it’s Pod time!

POD is a collaborative tool, written in Python based on TurboGears and uses the powerful PostgreSQL as database.

POD collaborative tool detail

In POD, everything is a document and can be managed as we usually do for documents. 4 types of documents are available (text document, files, contact and comments).

It is easy to create, modify, move, delete these documents, but POD also allows you to share them and set different access rights for each different document. You can also search and filter your query per type.

pod collaborative tool todo list

Similar to a Wiki, you can check different version of a document (versioning) and set access rights for a specific user or usergroup in read and/or write mode.

Obviously the best for you is to give a try to their latest demo (login: demo@localhost // password: demo) and to check below tutorial on how to install pod on your server.

POD collaborative tool login page


If you are on Debian/Ubuntu like,

1) Install the dependencies

In root, run:


2) Clone their git repository into your /var/www
3) Create the database

To create a database with PostGreSQL, you will need first to login as the postgres user

and then run the psql client

You should get something like this:

Now, create the database poddb with the user poduser and the password podpassword

Obviously replace the user and password by the one you want.

then quit the psql client by typing:

and logout from postgres user by running:

4) Import the database schema and initial data

Simply execute below sql query by replacing the database name and username by the one you previously created

enter your password and wait for your database to be initialized.

You can now test your database by running the following command:

You should see the admin@localhost user entry, simply press “q” to quit.

5) Setup the python virtualenv

To avoid conflict between your system-wide python modules and the pod required ones, you need to setup the Python virtualenv as following:

You may get an error with stevedore/pbr since it is not supported by python 3.2, but you can ignore this error.

Note that for Ubuntu users, you need to remove distribute and wsgiref from the requirements.txt file

6) Edit the POD configuration to match your settings

First, copy the development.ini file.base as development.ini

and edit it:

You will need to indicate your postgresql configuration, found the line:

and replace the user/password/pod database by what you have created before, in the case of this tutorial, I will replace it by:


You could also change the port to listen to (Default is 8080), the language (From English to French for example) and some more.

When done, save the file (CTRL +X, then Y)

7) Launch the pod
If no issue, you should now be able to visit your pod at http://YourIP:8080 with the login: admin@localhost and password: admin

Real-time collaborative document editing – Etherpad-lite

If you are looking for a way to edit a document in a collaborative way, like writting some documentation, or a formal email, an interview, or any document you wish others people to edit in real time with you, don’t look further!

Etherpad is a “really-real time” collaborative opensource editor that allow works at the same time on a same document.

alt text

Written in Javascript, Etherpad is multilanguage and support import/export in many formats. But also the strength of Etherpad is its great customization through a large range of plugins.

The best is still to try it!

Interested? Here is how to install Etherpad on your own server.



1) Install requirements

On top of a LAMP server, you will also need gzip, git, curl, libssl develop libraries, python and gcc. So, in root, simply run:

2) Install nodejs and npm

You will also need node.js, ideally the latest version, but to ease the installation I’m using the one in the repo, like what I did for Laverna (Self-hosted alternative to Evernote)

– If you use Ubuntu, simple run (in root)

– If you are on Debian (Wheezy?) like me, you can install nodejs from wheezy-backports (modify your source.list accordingly) and run (in root):

and for npm, you can use the installer

3) Clone their latest git version in your /var/www folder

(You will need git obviously, from the repo)

4) Start Etherpad

Simply run (No need for root)

and then simply go to http://YOURIP:9001

Voila, you should now have a working Etherpad. But you can still tweak it a lot, like changing the SQL database by MySQL (dirtyDB is the default one and should not be used for production server), or add an admin username/password, change the port, the name of the instance, etc..

All these settings can be updated in settings.json and the comments are pretty straightforward so I will not go into the details.

Actually, they have a very good wiki with all the tutorials needed, like how to configure Etherpad as a service, or how to put Etherpad behind a reverse proxy with SSL.

So for more information, I suggest you to visit directly their wiki.