This project could be seen as a simplified version of Ethereum blockchain
- Create a PoW based, Ethereum like blockchain from scratch to deeply understand how they work
- Interpreter for OpCodes
- Creating Blocks and Blockchain
- Proof of Work
- Mining and validating a Block
- Networking, allow peers to interact. Send new blocks, transactions...
- API to interact with the node via http calls
- Creating Accounts and Smart Contract accounts
- Creating and Validating Transactions
- Global State to store both Smart Contracts' and accounts' state
- Running code through making a transaction to a smart contract account
- Storing and getting data from a smart contract's storage
- Usage of gas and gasLimits
- Typescript is used for developing both the blockchain
- Node is used as runtime environment for typescript
- Express is used to create an API to interact with the blockchain
- PubNub is used to establish the network between different nodes