- "What will the next chapter of the Internet look like?"
- "How can the next-generation of Internet companies create a more equitable future?"
- "Why should the enormous value of network effects remain solely in the hands of the network coordinators?"
Who are we?First and foremost, Noteworthy is free and open-source software developed by the non-venture funded Decentralabs LLC. Decentralabs' mission is to "Empower the development of a safe, free web." We believe strongly that a free and open internet is critical to the long-term sustainability of human advancement.
Getting to the point (value)
The image above illustrates the structural differences between centralized, decentralized and distributed systems. However, let's look at the image through a different lens. Today, online services are designed to extract value from their users. While technically speaking, they may be massively distributed and fault-tolerant, if we consider the intent of these systems, they very much resemble Figure A – the centralized structure on the right where each edge (line between the dots) represents a unidirectional flow of value. It is this definition of centralized (value extracting) and distributed(value creating) that we carry forward. Noteworthy's goal is to be the bridge between the centralized Internet of today and the distributed Internet of tomorrow. In a future post I'll go into more detail about why I believe centralized systems are value constraining, while distributed systems are value creating. The short version is that the centralization of value bares non-obvious hidden costs AND an immense value in the hands of a few perpetuates the prolonged sequestering of a much greater value from the many.
A Noteworthy solution
So, how do we arrive at the value creating distributed Internet of the future? It's easier than you might think.By making it easy for individuals, friends, families, organizations, EVERYONE to build and own their own distributed networks, we can significantly dampen the negative externalities of centralization.
A Noteworthy architecture
Bare with me as we dive a bit into Noteworthy's technical details. This section is written to be comprehensible by both the technical and non-technical alike. Noteworthy employs a variation of the Hub and Spoke (STAR) network topology.
In a Noteworthy network their exists 4 possible roles: - Gateway: An Internet facing, publicly accessible node - Hub: Gateway connected, Link providing node - Taproot: An end-user's primary server (Raspberry Pi / Desktop Computer) - Device: A end-user's personal devices (Laptop, Phone, Tablet, etc)A node can participate as 1 or all of the above roles in a Noteworthy network. For example, at the time of writing Decentralabs is running a free (as in beer) Gateway and Hub. We encourage others to run their own Gateway and Hub (great use-case for $5/month Digital Ocean instance) and the notectl command-line utility makes it extremely easy to do so: notectl launcher launch_hub --hub-host myhub.mydomain.com
In the current implementation Gateways and Hubs are actually one in the same but we intend to decouple them.
In a Noteworthy network, Gateways and Hubs act as transparent (blind) TCP and UDP proxies. They simply proxy encrypted traffic (via the Links running on Hubs) over WireGuard. On the Hub, each Taproot gets a single dedicated Link container providing an isolated WireGuard network to create a private overlay network that allows traffic from the public internet to be routed from Gateway -> Hub -> Taproot. This traffic flow is unidirectional inbound only (outbound traffic from the Taproot will flow via its local network's default route) but we are planning to optionally enable outbound connectivity soon.
P2P mesh routing
Run your shit at home
We propose the above network architecture as a solution to make it easy/possible to run all of the online services you depend on at home. It's hard to compete with the privacy and security benefits of a self-hosted distributed system; however, for most people, the task of getting things working, keeping them working, and making them secure just isn't worth the additional privacy, security, autonomy and peace of mind that comes with owning your services and owning your own data. Noteworthy changes that.
A monumental undertakingToday, Noteworthy is an ecosystem of tooling designed to make packaging and deployment of private by default, self-hosted online services as easy as installing an app on your phone. Noteworthy's architecture takes care of all the complicated stuff like making sure your services are reliable and accessible. It was designed specifically to work well on low-cost devices such as the Raspberry Pi, but can also be run on a laptop, desktop or in the cloud. The only prerequisite for getting started with Noteworthy is Docker.
1-click Secure Private MessagingToday when you install Noteworthy it deploys a Matrix home server and the popular Matrix client, Riot Web on your Taproot. By default, it will provide your Taproot with public accessibility (so you can connect to it from a mobile Matrix client on your phone and so federation will work) via the Gateway and Hub operated by Decentralabs LLC. You do not need to expose any ports on your Taproot and yes, it allows you to run a public service behind a NAT/Firewall (think ngrok).Anyone who connects to the Decentralabs Gateway/Hub during the beta will get free inbound connectivity forever or until we run out of money.
Install Noteworthy (Beta)Before starting, make sure Docker is installed.
Copy and paste the one-liner below into your nearest console.
Generally speaking, one should be weary of executing one-liners like the one written below on your local system. It is recommended that users always review the source of such scripts before executing them.
In this shell script above we are creating a bash alias that wraps invocations of the
notectl command which lives in the docker container
Then, run the following command to kickstart the interactive installation process:
For now, by default when you install Noteworthy it will use the free (as in beer) Decentralabs operated Gateway and Hub so you'll need to reach out to [email protected] to get an invite code. You can also run your own Gateway and Hub if you'd prefer. Head on over to the Github repository for more details on how to do that and to check out the code. Join us at #noteworthy:tincan.community on Matrix to get support or just hang out. Catch you on the overlay!
$ notectl install