Please move to stack
Edge social network communication dev framework in Go. It will support Sub/Pub msg and exchange file.
Why do we create this?
We need to build a world without AI, BigData. Huge companies are prying into our personal life and trace whole private things. Human in this world should respect each other's privacy. No man analyzes our data in the place we don't know.
So now you know, We hate the big companies hold all data of ours.
Inspired by Go-Micro and Orbit-db.
--Log --Peer ----Codec ----Pubsub ----Registry ----Store ----Transport -------------Touch ------------------Node
Node is the smallest indivisible unit for exchanging data in peers-net. It includes
Registry for the outside and
Logger for the inside.
See architecture as below:
Relay Node: Gateway, nodes in public network logically. Helps other types nodes communicate within the bad network.
Terminal Node: Users' nodes.
Registry Node: Registry Center. Helps nodes look for others. 'Center' doesn't mean this kind of node is necessary. We use this for easy discovery.
Types can be init at one node which means a node could have tree types. Those types run in one or multi-process.
We have two top communications functions, pub/sub and transport files. Except Pub/Sub Event msg, every thing transported in the network is file. eg Blog page file, image file, short post like Twitter.
Files should be stored in node if they don't shared as public, but if people like some files to be public or share them with some extra people, the node will help them to make the file as BitTorrent or Magnet.
Node communication looks like: