Skynet, a simple eletronic cash system.
When I was 17, crypto was booming. I was fascinated by the idea of a decentralized currency, and I wanted to learn more about it. So, as any normal 17 year old would do, I decided to build my own cryptocurrency from scratch in C++.
As you can imagine, the resulting code was the pure definition of spaghetti. I already had some experience with C++, but I couldn't quite grasp some of the concepts surrouding blockchain. I often found myself digging through other people's code, trying to understand how they implemented certain mechanisms. I scavenged through Bitcoin's codebase, and I even found a few examples of blockchain implementations on GitHub. But they were all too "complex" for me at that point.
When learning how to implement the underlying infrastructure of blockchain, I noticed that most of the examples I found were just like that, with codebases that were too large, interconnected, and difficult to understand.
For that reason, I decided to rewrite my own blockchain from scratch, but this time, with a focus on simplicity and readability. I wanted to create a codebase that was easy to understand, and that could be used as a learning tool for others.
Skynet Core is the foundation for the Skynet ecosystem. It contains all the core functionality of the Skynet network, including:
- P2P Communication
- Blockchain
- Wallet
- Transaction Pool
- Mining
- Consensus
Skynet Node GUI implements a graphical user interface for Skynet Core. It allows users to interact with the Skynet network, and to manage their wallets.
./build.shYou can find the documentation for Skynet Core here.
If you want to contribute to Skynet Core, please read the contributing guidelines.
Skynet Core is licensed under the MIT License.