- Node v8.11.2
- npm (Node package manager)
- Internet connection
The below command allows to install all the dependencies of the application
npm install
Use the below command to create the new messenger group
node chat.js
Use the below command to the join the existing messenger group
node chat.js [BROADCAST ID]
create() helps to instantiate the application, Allows to create metadata if no broadcastID is available and appends it to the beginning of the log
Verify the current status of the application
Allows to merge current state of the application to the remote state of the application
Check whether the current state consits of the automerge document with docID
Updates the automerge document with the current changes, this is a wrapper to an automerge function, for more information please look at the automerge library about Automerge.change(doc, message, changeFx => {})
Gives length of the current log for agive actor
Check whether the given actor can modify the logs or not
Clean the current state of the application
Join the broadcast group
Replicate the logs manually across all the peers. helps to pass existing state to all the peers once available
Broadcast message to all the members in the swarm with same broadcastID
Get the current log state of the application
Append data blocks to the current log
Appends multiple datablocks to the log
This project has been done as a part of Distributed Systems coursework (C) 2019 Arun Nekkalapudi anekkal@iu.edu, Indiana University Bloomington.