Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

302 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Logo

IndiGOLD Blockchain - The README.md File


IndiGOLD Blockchain

IndiGOLD Blockchain is an implementation of a fully functional blockchain network consisting of nodes, miners, wallet and faucet apps, and a blockchain explorer.

Table of Contents
  1. About The Project
  2. GitHub Repo and Usage
  3. Known Issues
  4. License
  5. Contact
  6. Acknowledgments

About The Project

Project Overview

The IndiGOLD Blockchain application is a class project for the Kingsland University 'Zero to Blockchain' Program. Our application leverages the React frontend library to illustrate the functionality of a complete proof-of-work blockchain network.

Technical Requirements

Build a proof-of-work blockchain system that includes:

  • Nodes
  • Miners
  • Faucet
  • Wallets
  • Explorer

Build a blockchain network server and implement a RESTful API for client-server communiation. The frontend shall include:

  • Explorer
  • Wallet
  • Faucet
  • Nodes Monitoring
  • Mining Dashboard

Workflow: Use GitHub for version control. Each team member shall make a minimum of two pull requests.

(back to top)

Team Response to Requirements

Technical requirements:

  1. Backend: Node.js and JavaScript
  2. Frontend: React and Vite
  3. Websockets are used to stream data from the backend and display real-time hash rate values on the frontend.

(back to top)

Workflow requirements:

  1. A GitHub repository was created.
  2. Team members were added as collaborators.
  3. Collaborators cloned the repo & each started a new branch.
  4. Collaborators on GitHub:
    • used Pull Requests, making sure to tag a reviewer for approval.
    • worked on branches of Main and merged our work through Pull Requests.
    • had other teammates be Reviewers for their Pull Requests.

(back to top)

Built With

(back to top)

GitHub Repo and Usage

Visitors are encouraged to go to our GitHub repository to examine the code behind the functionality of the web app.

GitHub Link: https://https://github.com/tarenpang/blockchain

  1. npm install - in each of the following directories:
    1. blockchain
    2. backend
    3. frontend
  2. Start the app in the blockchain directory: npm run start
  3. (back to top)

    Known Issues

    The following are known, open issues:

    1. Competitive mining is not fully implemented. Competitive mining among miner nodes is a stretch goal that has not been fully implemented. The framework has been established to set the number of child processes independently for each node to simulate varying miner processing capacities. However, the way the local host computer allocates resources to running processes may be skewing the mining results. In other words, nodes that have more parallel child processes are not always the fastest to reach the required difficulty. We are in the process of investigating methods for correcting these skewed results.

    2. Application is not optimized for mobile-first, responsive design.The frontend can be improved to provide a better user experience. In particular, rendered elements can be made to be more responsive on mobile devices. Our team will be looking at ways to implement this on the next iteration of the application.

    (back to top)

    License

    Distributed under the GNU GPLv3 License.

    (back to top)

    Contact

    https://www.linkedin.com/in/marcellusbrady/

    https://www.linkedin.com/in/joshua-baum-627a0a217/

    https://www.linkedin.com/in/taren-pang-5430ab14/

    (back to top)

    Acknowledgments

    This project would not have been possible without the support and encouragement of the following individuals:

    1. Our instructors: Simeon Mandazhiev and Patrick Galloway at Kingsland University for expertly guiding us through the course.

    2. Administrators: Ma Deezan Gavilla and Rhochelle Kadusale for keeping us on track on the administrative side of things.

    (back to top)

About

mplementation of a fully functional blockchain network consisting of nodes, miners, wallet app, faucet app and blockchain explorer.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages