#+TITLE:
#+AUTHOR: Bob Mottram
#+EMAIL: bob@freedombone.net
#+KEYWORDS: freedombox, debian, beaglebone, red matrix, email, web server, home server, internet, censorship, surveillance, social network, irc, jabber
#+DESCRIPTION: Turn the Beaglebone Black into a personal communications server
#+OPTIONS: ^:nil toc:nil
#+HTML_HEAD: <link rel="stylesheet" type="text/css" href="freedombone.css" />

#+BEGIN_CENTER
[[file:images/logo.png]]
#+END_CENTER

#+begin_export html
<center><h1>Mesh Network: Capabilities</h1></center>
#+end_export

The mesh system has the following capabilities:

 - Discovery of other users on the network
 - Text based chat, one-to-one and in groups
 - Voice chat (VoIP) and video calls
 - Private and public sharing of files
 - Blogging
 - Collaborative editing of documents and presentations
 - Creating and broadcasting audio media/podcasts
 - Social network stream. Follow/unfollow other peers
 - No network administration required
 - No servers
 - Internet connection is optional
 - Works from bootable USB drives or microSD drives
 - Data is mesh routed between systems
 - Private communications is end-to-end secured and forward secret
 - Publicly shared data is /content addressable/

This system should be quite scalable. Both qTox and IPFS are based upon distributed hash tables (DHT) so that each peer does not need to store the full index of data for the entire network. Gossiping between SSB peers may be slower, but the [[https://en.wikipedia.org/wiki/Small-world_network][small world effect]] will presumably still make for quite efficient delivery in a large network. Caching or pinning of IPFS data and its content addressability means that if a file or blog becomes popular then performance should improve as the number of downloads increases, which is the opposite of the client/server paradigm.
