Why hello there. I’m Tom 👋 I am a freelance growth marketing consultant working with brands like BMW, ING, Sony Music, Philips, etc. Because of my education in tech, I am always on the lookout of the next big thing. My curioucity drove me to learning blockchain development to understand the core features of blockchain technology. One of the ways to learn was to enroll in Udacity's nanodegree program.
- Chapter 1: Blockchain Fundamentals
- Chapter 2: Build CryptoStar Dapp on Ethereum (4 more chapters to come.)
This folder structure is a multi-root workspace configured in Visual Studio Code. To open the workspace in VS Code, open the blockchain-dev-course.code-workspace
file. Each root folder is a chapter containing a final project for submission and practice exercises building up to the final project. Each project contains a README.md
file with further instructions on running the project code.
In the first chapter of the course, I learned the basics of blockchain technology, managing transactions, Bitcoin core & testnet to test applications, managing data in lockchain like assets, etc. During this course, code exercises were in order to teach the fundamentals of creating your own private blockchain. These are the subfolders added to the repo. They all build up to eventuelly completing the first assignment.
Exercises:
- Hash Key Introduction: hashing information with crypto-js.
- Javascript Promises Introduction: Introduction to working with the 'promises' method.
- Blockchain Practice Block: Creating your first block with data.
- Block Data Model: Creating a simple blockchain with block data.
- Encode Decode Files: Encode and decode assets like images and add this data in a block to the blockchain.
- ExpressJS Introduction: An introduction to using ExpressJS to run your blockchain.
In this project, I created a private blockchain to record ownership of stars. Built as an express.js
app, I implemented the code in src/block.js
and src/blockchain.js
that provides the functionality of validating a block on the blockchain, decoding the block, and constructing a chain of blocks that can be signed with an Bitcore wallet. The project also exposes endpoints to search for blocks by block height, block hash, and by the address of the wallet that signed the block. I tested the application with API calls in POSTMAN.
More information about this project is available in the project folder: Blockchain Fundamentals.
The purpose of this project is to develop familiarity with building a decentralized app (dApp) on Ethereum.
More information will soon be available.