Welcome to BlockChat, a comprehensive blockchain application built entirely in Golang. This application showcases a decentralized blockchain system with CLI and Webapp interfaces, allowing users to join the blockchain network, send messages or Bitcoin, and engage in transactions with the assurance of a Proof of Stake validation mechanism.
- Blockchain Core: A robust blockchain backend written in Go, featuring block creation, transaction handling, wallet management, and node functionality.
- CLI Interface: A command-line interface allowing for direct interaction with the blockchain for operations like viewing balances, making transactions, and participating in the network.
- Web Application: A user-friendly web interface providing access to blockchain functionalities such as account balance checks, transaction creation, and stake participation.
- Proof of Stake: An efficient consensus mechanism ensuring network security and block validation without the extensive energy requirements of Proof of Work systems.
- Golang: The entire backend, CLI, and web server are developed using Go, known for its efficiency and scalability in networked applications.
- HTML/CSS: For the web interface, providing a clean and accessible user experience.
To set up BlockChat on your local machine, follow these steps:
- Clone the Repository: Clone this repository to your local machine using
git clone. - Install Dependencies: Navigate to each directory (
API,cli_client,webapp) and rungo mod tidyto install the necessary Go modules. - Start the API Server: In the
APIdirectory, executego run *.goto start the backend server. - Run the CLI Client: Access the CLI functionalities through the
cli_clientdirectory by runninggo run cli.go. - Launch the Web Application: Start the web server in the
webappdirectory by executinggo run app.go, then access the application through your web browser.
Check out our YouTube demo to see BlockChat in action.
Yiannis Palaios | Peter Avgerinos |
