Blockchain is platform and language agnostic. That means, you can use any popular programming language to create a blockchain. Some of the popular blockchains are developed using C++, Java, JavaScript, Go, Python, C#, Ruby, Solidity, and PHP.
You can create your blockchain using JavaScript but only some portions of it. A blockchain is a combination of several technologies including cryptography, distributed ledger technology, P2P network programming, database storage and sharing, network communication and notifications, backend services, UI components and so on. So building a complete blockchain product may require more than just one language.
Some of the popular publicly available blockchains (permissionless or permissioned) that are written in JavaScript are IOTA, Verge, and NEM.
Basic blockchain
Here are some videos that will help you understand and learn how to build a basic blockchain using JavaScript.
Video 1: Create a Blockchain with JavaScript
Video 2: Implement Proof of Work in a Blockchain
Video 3: Mining Rewards and Transactions in a Blockchain
Blockchain course on Udemy
In this course you will be building your very own blockchian and decentralized blockchain network by using the JavaScript programming language. By building your own blockchain, you will learn how blockchian technology works under-the-hood, how decentralized blockchain networks function, how the code behind these technologies work, and why blockchain is such a secure and valuable technology.
Course: https://www.udemy.com/build-a-blockchain-in-javascript/
The blockchain that you build in this course will have all of the following features:
- A proof of work algorithm to secure the network.
- Hashing algorithms to secure the data within the blockchain.
- The ability to mine (create) new blocks that contain data.
- The ability to create transactions and store them in blocks.
- An API/server that will be used to interact with the blockchain from the internet.
- It will be hosted on a decentralized blockchain network.
- A consensus algorithms to verify that the network nodes have valid data and are synchronized.
- A broadcasting system to keep the data in the blockchain network synchronized.
- Many other awesome features!...
When you have completed this course you will have built out your own blockchain prototype in code. You will have a thorough understanding of how blockchain technology actually works and why this technology is so secure and valuable. You will also have a deep understanding of how decentralized blockchain networks function and why decentralization is such an important feature for securing the blockchain. The whole process of storing, securing, and validating data/transactions on the blockchain will become very clear.