Holochain is a development framework and networking protocol that allows you to create truly peer-to-peer applications that guarantee high levels of trust and security.
What do we mean? In short, you can safely create and deploy applications that do not use a central server. Every user runs the application on their own device, creates and stores their own data, and talks directly to other users.
Why does this matter? Because it puts human beings at the center. Users are empowered to own their data and interactions with others. It also means that many of the typical headaches of application development are non-existent:
On the surface, this sounds risky. Without central oversight, what's to prevent hacking, fraud, and data theft? This is particularly problematic for applications that require strong data integrity such as financial platforms and voting services.
Other distributed computing efforts, like blockchain, attempt to solve this problem by sharing a single, public ledger among all participants. The integrity of the data is safeguarded by making participation costly, which makes cheating costly as well. But, ultimately, these costs lead to centralization: participants are separated into 'full nodes,' who have the computer power or capital to participate, while the 'light clients' have to ask the full nodes to do things for them, often in exchange for fees. To our way of thinking, it begins to sound like client/server all over again.
With Holochain, we are approaching the problem differently. We recognize that interacting parties can come to agreements directly without central oversight or global consensus, as long as they can establish trust. Holochain builds this trust on two pillars:
This simple foundation creates a surprisingly robust, resilient system. It's a lot like what biological systems have been doing for billions of years.
Although the foundation of Holochain is simple, there are many complexities involved. But don't worry–-Holochain manages most of this for you at the 'subconscious' level. All you need to do is focus on your app's functionality.
Tutorial: Download and run a demo app >
Next: Application architecture >>
Holochain Core Concepts