Multi-room P2P chat (like a distributed Slack) which runs on holochain
Clone or download
Latest commit b2ce7dc Aug 6, 2018


Build Status Code Status In Progress Gitter License: GPL v3

*Multi-room P2P chat on holochain

Code Status: Pre-alpha. Not for production use. This application has not been audited for any security validation.


  TARGETDIR=$(pwd) docker-compose up

Now you can open browsers to

  http://localhost:3142 - Bootstrap
  http://localhost:3141 - Holochat
  http://localhost:4141 - Holochat
  http://localhost:5141 - Holochat

Installation native

Prerequiste: Install holochain on your machine. You can install holochat very simply with this:

hcdev init -cloneExample=holochat


To do a test run of holochat simply type

cd holochat
hcdev web

you should see something like:

Copying chain to: /home/bootstrap/.holochaindev
Serving holochain with DNA hash:QmdFv5XcG6YZgMYQ9hPJfn6xkhMhDK99rjiHJHH9zorUad on port:4141

Then simply point your browser to http://localhost:4141 access the holochat UI.


To run all the stand alone tests:

hcdev test

Currently there is one scenario test:


hcdev -mdns=true scenario backnforth

This test spins up two nodes person1 and person and tests that they can send messages back and forth

hcdev -mdns=true -debug scenario backnforth

Run e2e tests

  cd ui-automation
  yarn test

Feature Roadmap and Current Progress


We welcome pull requests and issue tickets. Find us on gitter to chat.

Contributors to this project are expected to follow our development protocols & practices.


License: GPL v3

Copyright (C) 2017, The MetaCurrency Project (Eric Harris-Braun, Arthur Brock, et. al.)

This program is free software: you can redistribute it and/or modify it under the terms of the license provided in the LICENSE file (GPLv3). This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Note: We are considering other 'looser' licensing options (like MIT license) but at this stage are using GPL while we're getting the matter sorted out.