A distributed, peer-to-peer chat application built on IPFS
NOTE! Currently only the Electron (Desktop) version works. We're working to fix the Browser version (js-ipfs)
Status: In active development
NOTE! Orbit is still more or less experimental. Things will change and break over the coming months, but we're pushing towards to stabilize the code base. If you come across problems, it would help greatly to open issues so that we can fix them as quickly as possible.
Check the project's roadmap to see what's happening at the moment and what's planned next.
See also the CHANGELOG for what's new!
If you would like to participate in designing what Orbit is as a product, please join us in Product Design for Orbit issue.
Orbit can be run either in a browser or as a native desktop application. The browser application uses js-ipfs implementation of IPFS. The desktop version uses the go-ipfs implementation of IPFS Electron. Orbit uses orbit-db as its underlaying distributed database.
Please note that Orbit is not secure at the moment!
The live demo is an old version of Orbit. It is recommended to follow the instructions below to run the latest version.
git clone https://github.com/haadcode/orbit.git
cd orbit
npm install
npm start
Chrome is recommended to run Orbit in the browser.
git clone https://github.com/haadcode/orbit.git
cd orbit
npm install
npm start
- Node.js v6.x.x
- npm v3.x.x
- g++, gcc, make (for building native modules)
- python 2 (for building, some native modules need it, node-fibers perhaps?)
git clone https://github.com/haadcode/orbit.git
cd orbit/
npm install
npm test
NOTE! This is currently not working as described. We're working to fix it.
cd client/
npm install
npm run dev
# This won't work. See bug here: __TODO__
This will open webpack dev-server at http://localhost:8000/webpack-dev-server.
cd client/
npm install
npm run build
This will create client/dist
directory which contains all the files needed to distribute the Orbit browser application.
First, start the desktop app in developer mode:
npm run dev:electron
Then, start the UI development environment:
cd client/
npm install
npm run dev
Run this is in project's root directory, not in client/
.
npm run build
The builds are in dist/
.
We're in the process of separating the core orbit code into its own module and it'll make it possible to use the Orbit API to develop other clients and program using orbit.
See API documentation for full details.
I would be happy to accept PRs! If you want to work on something, it'd be good to talk beforehand to make sure nobody else is working on it. You can reach me on Twitter @haadcode or on IRC #ipfs on Freenode, or in the comments of the issues section.
A good place to start are the issues labelled "help wanted" or the project's status board.
MIT © 2016 haadcode