This project is a simple web dashboard created to help me study and understand the Bitcoin protocol. It interacts directly with a running bitcoind or bitcoin-qt node, using it as a reference implementation to explore blockchain data, network status, and transaction handling.
- Displays general information about the Bitcoin blockchain, network, and mempool.
- Shows the latest blocks and the current top transactions in the mempool.
- Allows users to look up blocks by hash (including a shortcut for the Genesis Block).
- Allows users to look up transactions by ID (TXID).
- Node.js and npm installed.
- A running Bitcoin Core node. This application is designed to connect to your own node to display its data. RPC must be enabled in your
bitcoin.conffile. - RPC credentials (username and password) from your
bitcoin.conffile.
-
Clone the repository:
git clone https://github.com/jmolinasoler/Novadash.git cd Novadashboard -
Install dependencies:
npm install
-
Create a
.envfile in the project root and add your Bitcoin Core RPC credentials:RPC_HOST=http://127.0.0.1 RPC_PORT=8332 RPC_USER=your_rpc_username RPC_PASSWORD=your_rpc_passwordReplace
your_rpc_usernameandyour_rpc_passwordwith your actual RPC credentials. Ensure that your RPC host includes thehttp://orhttps://prefix, and matches the setting in yourbitcoin.conffile.
-
Start the application:
node index.js
-
Open your web browser and go to
http://localhost:3000.
If you encounter issues connecting to your Bitcoin Core node, please refer to the TROUBLESHOOTING.md guide for common solutions.
To run the application in development mode:
node index.js This will start the server, and you can view the dashboard in your browser.
Contributions are welcome! Please open an issue or submit a pull request for any bugs or improvements.