Blockmesh Operating System
proof of work. We aim to create a secure and scalable decentralized computer formed by a large number of desktop PCs at home. We are designing and coding a modern blockchain platform from the ground up for scale, security and speed based on the learnings of the achievements and mistakes of previous projects in this space.
To learn more about Spacemesh head over to our wiki.
SpacemeshOS is designed to create a decentralized blockchain smart contracts computer and a cryptocurrency that is formed by connecting the home PCs of people from around the world into one virtual computer without incurring massive energy waste and mining pools issues that are inherent in other blockchain computers, and provide a provably-secure and incentive-compatible smart contracts execution environment. Spacemesh OS is designed to be ASIC-resistant and in a way that doesn’t give an unfair advantage to rich parties who can afford setting up dedicated computers on the network. We achieve this by using a novel consensus protocol and optimize the software to be most effectively be used on home PCs that are also used for interactive apps.
What is this good for?
Provide dapp and app developers with a robust way to add value exchange and other value related features to their apps at scale. Our goal is to create a truly decentralized cryptocoin that fulfills the original vision behind bitcoin to become a secure trustless store of value as well as a transactional currency with extremely low transaction fees.
go-spacemesh is designed to be installed and operated on users' home PCs to form one decentralized computer.
Development is currently focused on 3 main node core components:
- The p2p/networking - the project includes a modern and robust p2p protocol for use by components up the stack.
- The POST/blockmesh based consensus layer - Spacemesh protocol implementation, utilizing the p2p capabilities.
- App scaffolding - supporting functionality such as config, repl, cli and cross platform packaging.
Over the last few months, we had good progress on #1 and #3 and we are now starting to focus on #2.
Thank you for considering to contribute to the go-spacemesh open source project. We welcome contributions large and small and we actively accept contributions.
go-spacemesh is part of The Spacemesh open source project, and is MIT licensed open source software.
We welcome collaborators to the Spacemesh core dev team.
You don’t have to contribute code! Many important types of contributions are important for our project. See: How to Contribute to Open Source?
To get started, please read our contributions guidelines.
Browse Good First Issues.
Please read the Spacemesh full FAQ.
High Level Design
Client Software Architecture
install Go 1.9.2 or later for your platform
go get github.com/spacemeshos/go-spacemesh
- Fork the project from https://github.com/spacemeshos/go-spacemesh
- Checkout the
developbranch of your fork from GitHub
- Move your fork from
$GOPATH/src/github.com/spacemeshos/go-spacemeshThis allows GO tools to work as expected.
go-spacemesh for your current system architecture use:
from the project root directory. The binary
go-spacemesh will be saved in the project root directory.
To build a binary for a specific architecture directory use:
make darwin | linux | windows
Platform-specific binaries are saved to the