After two years of development, first release announced significant experimental web browser "Beaker 1.0", what stands out for its integrated support for the protocol of Hypercore P2P communications.
With this protocol, a decentralized content delivery network is formed, whose nodes are browser users. Said network allows you to host web applications that do not require servers.
The project code is written in JavaScript using the Chromium engine and the Electron platform and is distributed under the MIT license.
The Hypercore protocol combines blockchain and BitTorrent technologies. As with BitTorrent, visitors download files from the site and begin to participate in its distribution.
The main difference with Hypercore is the ability to modify files without creating a new URL.
To create your site, you just need to prepare the necessary HTML / JavaScript code, create a Hyperdrive environment and place a link to this environment, which is accessed via the URL "hyper: //".
When you open this link, the content will be downloaded directly from the author's system, after which the uploader may participate in its distribution to other users.
The Hypercore protocol relies on a record that is available only to add new data and does not allow changes to the information already added.
Such records can be quickly distributed among network participants in P2P mode, while each node can download only the fragments of interest in the record and start participating in their distribution.
The integrity of the record is verified by the "Merkle Tree" structure, in which each branch verifies all the underlying branches and nodes, thanks to the joint hash (in the form of a tree) using the BLAKE2b-256 hash function.
Having the final hash, the user can verify the correctness of the entire history of operations, as well as the correctness of the past states of the database.
To create sites, the browser has a built-in code editor, tools to synchronize directories with the content of the site, a web terminal (a command console for navigating the Hyperdrive environment) and a special API for reading and downloading files.
Supports linking multiple Hyperdrive environments, merge environments, create forks, participate in the distribution of other users' environments.
In addition to the creation of decentralized sites, Beaker application areas such as the exchange of private data (access to the resource can only be obtained by a link informed in the form of a hash), the organization of web programming training (in the process can be limited to a browser without additional server systems and tools), simplifying interaction in web development teams and testing site prototypes (you can fork the site, make a change and share the result).
How to install Beaker 1.0 on Linux?
For those who are interested in being able to install this web browser on their distro, they should know that the package for Linux is currently built in AppImage format or to build it from source code.
In the first of the two cases, we must download any of the current packages. We do this from the following link.
For the case of Appimage like For example, I'll take the latest version 1.0 right now, it's downloaded with:
wget https://github.com/beakerbrowser/beaker/releases/download/1.0.0/Beaker.Browser-1.0.0.AppImage
We give execution permissions with:
sudo chmod +x Beaker.Browser-1.0.0.AppImage
And we execute with double click on the file or from the terminal with:
./Beaker.Browser-1.0.0.AppImage
Now, for those who are interested in building the browser from source code, they should have ibtool, m4, autoconf and automake.
To install these tools, for example on Debian, Ubuntu and any derivative of these:
sudo apt-get install libtool m4 make g ++ autoconf
In the case of Fedora and derivatives:
sudo dnf install libtool m4 make gcc-c ++ libXScrnSaver
And finally, to compile the browser, just type the following commands:
git clone https://github.com/beakerbrowser/beaker.git cd beaker / scripts npm install npm run rebuild npm start
If you want to know more about it, you can check the following link.