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 tidy
to install the necessary Go modules. - Start the API Server: In the
API
directory, executego run *.go
to start the backend server. - Run the CLI Client: Access the CLI functionalities through the
cli_client
directory by runninggo run cli.go
. - Launch the Web Application: Start the web server in the
webapp
directory 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 |