You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: clean up bluffs, sync with code, and upgrade dependencies
- Corrected Readme.md, backend/doc.md, and backend/test.md to accurately reflect current codebase.
- Fixed collector log (7s vs 1s interval).
- Implemented missing 'mempool_health_statistics' in backend to fix frontend gap.
- Upgraded backend and frontend dependencies to latest production-ready versions.
Credits:
- Abubakar Sadiq Ismail: Core contributor and architecture.
- b-l-u-e: Backend logic and service implementation.
- mercie-ux: Frontend design and visual components.
- Gemini & Claude: AI-assisted development and test automation.
A comprehensive full-stack application for monitoring and visualizing Bitcoin Core transaction fees, mempool dynamics, and block statistics. This tool provides real-time insights through a modern web interface powered by a robust backend that interfaces directly with a Bitcoin Core node.
3
+
A full-stack application for monitoring and validating Bitcoin Core transaction fee estimates against actual block data.
4
4
5
5
## Overview
6
6
7
-
This project provides a centralized platform to track and analyze Bitcoin transaction fees. It bridges the gap between raw Bitcoin Core RPC data and human-readable visualizations.
7
+
This project tracks `estimatesmartfee` from a Bitcoin Core node and compares those estimates with the feerate percentiles of subsequent blocks. It provides a visual interface to verify the accuracy of the node's fee predictions.
8
8
9
9
### Key Features
10
-
-**Real-time Fee Estimation**: Get feerate estimates based on current mempool percentiles and historical data.
11
-
-**Interactive Charts**: Visualize fee history, block statistics, and mempool status using Recharts and D3.
12
-
-**Mempool Diagram**: View the current state of the mempool in a graphical format.
13
-
-**Unified API**: A clean REST API that handles multiple data sources and internal caching.
10
+
-**Fee Estimate Tracking**: A background service polls Bitcoin Core every 7 seconds for smart fee estimates.
11
+
-**Historical Accuracy**: Visualizes the accuracy of estimates (within range, overpaid, or underpaid) compared to real block data.
12
+
-**Mempool Diagram**: Real-time visualization of the mempool fee/weight accumulation curve.
13
+
-**Block Statistics**: Direct insights into feerate percentiles for recent blocks.
14
14
15
-
## Architecture & Integration
15
+
## Architecture
16
16
17
-
The project is divided into two main modules that are linked through a secure proxy layer:
18
-
19
-
-**Backend (Python/Flask)**: Communicates with your Bitcoin Core node via RPC. It handles data collection, persistence in SQLite, and serves as the source of truth for all analytics.
20
-
-**Frontend (Next.js/TypeScript)**: Provides the user interface. It communicates with the backend via an internal API route (`frontend/src/app/api/[...path]/route.ts`) which proxies requests to the backend service. This architecture simplifies deployment and enhances security.
17
+
-**Backend (Python/Flask)**: Communicates with Bitcoin Core via RPC. Collects estimates into SQLite and serves data via a REST API.
18
+
-**Frontend (Next.js/TypeScript)**: Modern UI using Recharts and D3. Communicates with the backend via a secure API proxy route.
21
19
22
20
## Project Structure
23
21
24
22
```text
25
23
.
26
-
├── backend/ # Flask API, data collector, and database services
27
-
│ ├── src/ # Application logic (services, app.py)
24
+
├── backend/ # Flask API, data collector, and SQLite database
25
+
│ ├── src/ # Core logic and RPC services
28
26
│ └── tests/ # Pytest suite for backend validation
29
27
├── frontend/ # Next.js web application
30
-
│ ├── src/app/ # App router, pages, and secure API proxy
31
-
│ └── src/components/ # Reusable UI components and dynamic charts
-**Bitcoin Core Node**: Access to a running Bitcoin Core node with RPC enabled.
39
-
-**Python**: Version 3.12+
40
-
-**Node.js**: Version 22+
36
+
-**Bitcoin Core Node**: Access to a node with RPC enabled (`getblockstats` support required).
37
+
-**Python**: 3.12+
38
+
-**Node.js**: 22+
41
39
42
40
### 1. Configuration
43
-
-**Backend**: Navigate to `backend/`, copy `rpc_config.ini.example` to `rpc_config.ini`, and fill in your node's details.
44
-
-**Frontend**: Ensure the `BACKEND_URL` environment variable is set (defaults to `http://127.0.0.1:5001`).
41
+
-**Backend**: Copy `backend/rpc_config.ini.example` to `backend/rpc_config.ini` and provide RPC credentials.
45
42
46
43
### 2. Manual Startup
47
44
**Backend:**
@@ -60,20 +57,15 @@ npm install
60
57
npm run dev
61
58
```
62
59
63
-
### 3. Automated Startup (Production-like)
64
-
A `restart.sh` script is provided in the root directory to stop any existing instances and start both services in the background using Gunicorn (backend) and Next.js (frontend):
60
+
### 3. Automated Startup
61
+
Use the provided `restart.sh` script to launch both services in the background:
65
62
```bash
66
63
chmod +x restart.sh
67
64
./restart.sh
68
65
```
69
66
70
67
## Credits
71
-
72
-
This project is a collaborative effort between:
73
-
-**Ismael Sadeeq**: Main contributor and maintainer.
74
-
-**Gemini**: AI-assisted development, architectural design, and test automation.
75
-
-**Claude**: AI-assisted development, code optimization, and documentation.
76
-
-**b-l-u-e** ([winnie.gitau282@gmail.com](mailto:winnie.gitau282@gmail.com)): Contributions to core services, backend logic, and test suites.
77
-
-**mercie-ux** ([mbaomercy0@gmail.com](mailto:mbaomercy0@gmail.com)): Contributions to user experience, frontend design, and visual components.
78
-
79
-
The codebase represents a merge of PR work from contributors and AI-generated improvements for a complete, robust experience.
68
+
-**Abubakar Sadiq Ismail**: Core contributor and architecture.
69
+
-**b-l-u-e**: Backend logic and service implementation.
70
+
-**mercie-ux**: Frontend design and visual components.
71
+
-**Gemini & Claude**: AI-assisted development and test automation.
0 commit comments