Skip to content

This is a decentralized messaging application similar to discord/slack. The backend uses a custom built blockchain to share and sync mesaages across the network

Notifications You must be signed in to change notification settings

atharva-vyas/decentralized-discord

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 

Repository files navigation

decentralized-discord

This is a decentralized messaging application similar to discord/slack. The backend uses a custom built blockchain to share and sync mesaages across the network

How to create your own server:-

  1. docker pull atharvavyas/decentralized-discord-node-server
  2. docker run -t -d -p 1000(or any other free port):3003 --name nodeServer atharvavyas/decentralized-discord-node-server
  3. docker ps -a
  4. docker start {container_id}
  5. docker exec -it nodeServer bash
  6. cd home
  7. nano serverInit.json

  8. replace the myUrl variable with the address/url of your server/node
  9. if you are are planning to add additional nodes(which you should), then add their url's/address's in the initialNodes array
  10. also replace the serverName with a name of your preference
  11. close, and save the file

  12. npx nodemon
to check if the server is running, go to http://localhost:{your free port from step-2}/state
and you should be able to see a json with your servername, and various other info

How to join a server:-

(i know its a bit cumbersome for now)
  1. open backend/middleware/serverInfo.json
  2. replace the initialNodes array contents, with the url/s of the server/node you want to connect to.
  3. go to /backend/middleware/ and run index.js
  4. go to /frontend/ and run npm start, and try logging in

PLEASE NOTE:-

  • the first user to login, will automatically become the admin, and for now you can only have one admin. also only a admin can add new channels
  • this is a barebones proof-of-concept testbed, ontop of which you can keep on adding additional features
  • this does not use matrix. It uses a custom blockchain architecture to sync and share data
  • this was made in around a week, so expect some bugs & performance issues

570e0dc6-a84b-493c-821d-a04659431e32 sketchpad(7)