From 4c704aaf5f1a4212e19982b57d2362f374957584 Mon Sep 17 00:00:00 2001 From: Nathan Woodburn Date: Thu, 20 Nov 2025 16:31:15 +1100 Subject: [PATCH] feat: Initial explorer --- server.py | 29 +-- templates/assets/css/index.css | 373 ++++++++++++++++++++++++++++--- templates/assets/img/favicon.png | Bin 45226 -> 63873 bytes templates/index.html | 352 +++++++++++++++++++++++++---- 4 files changed, 661 insertions(+), 93 deletions(-) diff --git a/server.py b/server.py index f0b75c7..c4fb1af 100644 --- a/server.py +++ b/server.py @@ -2,7 +2,6 @@ from flask import ( Flask, make_response, request, - jsonify, render_template, send_from_directory, send_file, @@ -105,32 +104,6 @@ def catch_all(path: str): # endregion -# region API routes - -api_requests = 0 - - -@app.route("/api/v1/data", methods=["GET"]) -def api_data(): - """ - Example API endpoint that returns some data. - You can modify this to return whatever data you need. - """ - - global api_requests - api_requests += 1 - - data = { - "header": "Sample API Response", - "content": f"Hello, this is a sample API response! You have called this endpoint {api_requests} times.", - "timestamp": datetime.now().isoformat(), - } - return jsonify(data) - - -# endregion - - # region Error Catching # 404 catch all @app.errorhandler(404) @@ -140,4 +113,4 @@ def not_found(e): # endregion if __name__ == "__main__": - app.run(debug=True, port=5000, host="0.0.0.0") + app.run(debug=True, port=5000, host="127.0.0.1") diff --git a/templates/assets/css/index.css b/templates/assets/css/index.css index 3ef53b7..96c002a 100644 --- a/templates/assets/css/index.css +++ b/templates/assets/css/index.css @@ -1,41 +1,362 @@ -body { - background-color: #000000; - color: #ffffff; -} -h1 { - font-size: 50px; +* { margin: 0; padding: 0; + box-sizing: border-box; } -.centre { - margin-top: 10%; + +body { + background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 100%); + color: #e0e0e0; + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif; + line-height: 1.6; + min-height: 100vh; +} + +.container { + max-width: 1200px; + margin: 0 auto; + padding: 0 20px; +} + +/* Header */ +header { + background: linear-gradient(135deg, #8b2f0a 0%, #6b3d0a 100%); + padding: 2rem 0; text-align: center; + box-shadow: 0 4px 20px rgba(255, 107, 53, 0.3); + margin: 0 0 2rem 0; } -a { + +header h1 { + font-size: 3rem; + margin: 0; color: #ffffff; - text-decoration: none; + text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3); } + +.subtitle { + color: rgba(255, 255, 255, 0.9); + font-size: 1.2rem; + margin-top: 0.5rem; +} + +/* Main Content */ +main { + padding: 2rem 0; +} + +/* Cards */ +.card { + background: rgba(30, 30, 30, 0.8); + border-radius: 12px; + padding: 2rem; + margin-bottom: 2rem; + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3); + border: 1px solid rgba(255, 107, 53, 0.2); +} + +.card h2 { + color: #ff6b35; + margin-bottom: 1.5rem; + font-size: 1.8rem; +} + +.card h3 { + color: #f7931e; + margin-bottom: 1rem; + font-size: 1.3rem; +} + +/* Status Section */ +.status-section { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); + gap: 1.5rem; + margin-bottom: 2rem; +} + +.status-card { + padding: 1.5rem; +} + +.status-content { + color: #b0b0b0; + font-size: 0.9rem; +} + +/* Info Grid */ +.info-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); + gap: 0.75rem; +} + +.info-item { + padding: 0.5rem; + background: rgba(20, 20, 20, 0.5); + border-radius: 6px; + border: 1px solid rgba(255, 107, 53, 0.15); +} + +.info-item.no-border { + background: transparent; + border: none; + padding: 0; +} + +.info-item.full-width { + grid-column: 1 / -1; +} + +.info-item strong { + color: #ff6b35; + display: inline-block; + min-width: 100px; +} + +.mono { + font-family: 'Courier New', monospace; + font-size: 0.85rem; + word-break: break-all; +} + +.view-all-btn { + display: inline-block; + padding: 0.5rem 1rem; + background: linear-gradient(135deg, #ff6b35 0%, #f7931e 100%); + color: #ffffff !important; + text-decoration: none !important; + border-radius: 6px; + font-weight: 600; + transition: all 0.3s ease; +} + +.view-all-btn:hover { + transform: translateY(-2px); + box-shadow: 0 4px 12px rgba(255, 107, 53, 0.4); +} + +/* Tabs */ +.search-tabs { + display: flex; + gap: 0.5rem; + margin-bottom: 1.5rem; + flex-wrap: wrap; +} + +.tab-btn { + background: rgba(50, 50, 50, 0.5); + color: #e0e0e0; + border: 1px solid rgba(255, 107, 53, 0.3); + padding: 0.75rem 1.5rem; + border-radius: 8px; + cursor: pointer; + font-size: 1rem; + transition: all 0.3s ease; +} + +.tab-btn:hover { + background: rgba(255, 107, 53, 0.2); + border-color: #ff6b35; +} + +.tab-btn.active { + background: linear-gradient(135deg, #ff6b35 0%, #f7931e 100%); + color: #ffffff; + border-color: #ff6b35; +} + +.tab-content { + display: none; +} + +.tab-content.active { + display: block; +} + +/* Search Box */ +.search-box { + display: flex; + gap: 0.75rem; + margin-bottom: 1.5rem; + flex-wrap: wrap; +} + +.search-box input { + flex: 1; + min-width: 200px; + padding: 0.75rem 1rem; + background: rgba(20, 20, 20, 0.8); + border: 1px solid rgba(255, 107, 53, 0.3); + border-radius: 8px; + color: #e0e0e0; + font-size: 1rem; +} + +.search-box input:focus { + outline: none; + border-color: #ff6b35; + box-shadow: 0 0 0 2px rgba(255, 107, 53, 0.2); +} + +.search-box input::placeholder { + color: rgba(224, 224, 224, 0.5); +} + +.search-box button { + padding: 0.75rem 1.5rem; + background: linear-gradient(135deg, #ff6b35 0%, #f7931e 100%); + color: #ffffff; + border: none; + border-radius: 8px; + cursor: pointer; + font-size: 1rem; + font-weight: 600; + transition: all 0.3s ease; +} + +.search-box button:hover { + transform: translateY(-2px); + box-shadow: 0 4px 12px rgba(255, 107, 53, 0.4); +} + +.search-box button:active { + transform: translateY(0); +} + +.secondary-btn { + padding: 0.75rem 1.5rem; + background: rgba(50, 50, 50, 0.8); + color: #ff6b35; + border: 1px solid #ff6b35; + border-radius: 8px; + cursor: pointer; + font-size: 1rem; + font-weight: 600; + transition: all 0.3s ease; +} + +.secondary-btn:hover { + background: rgba(255, 107, 53, 0.2); +} + +/* Result Box */ +.result-box { + background: rgba(10, 10, 10, 0.8); + border: 1px solid rgba(255, 107, 53, 0.2); + border-radius: 8px; + padding: 1rem; + min-height: 100px; + max-height: 600px; + overflow-y: auto; +} + +.result-box:empty { + display: none; +} + +.result-box pre { + color: #b0b0b0; + font-family: 'Courier New', monospace; + font-size: 0.9rem; + white-space: pre-wrap; + word-wrap: break-word; +} + +.result-box .error { + color: #ff4444; + font-weight: 600; +} + +/* Scrollbar */ +.result-box::-webkit-scrollbar { + width: 8px; +} + +.result-box::-webkit-scrollbar-track { + background: rgba(20, 20, 20, 0.5); + border-radius: 4px; +} + +.result-box::-webkit-scrollbar-thumb { + background: rgba(255, 107, 53, 0.5); + border-radius: 4px; +} + +.result-box::-webkit-scrollbar-thumb:hover { + background: rgba(255, 107, 53, 0.7); +} + +/* Footer */ +footer { + background: rgba(20, 20, 20, 0.8); + padding: 2rem 0; + text-align: center; + margin-top: 3rem; + border-top: 1px solid rgba(255, 107, 53, 0.2); +} + +footer p { + color: rgba(224, 224, 224, 0.7); + margin: 0.5rem 0; +} + +.timestamp { + font-size: 0.9rem; + color: rgba(224, 224, 224, 0.5); +} + +/* Links */ +a { + color: #ff6b35; + text-decoration: none; + transition: color 0.3s ease; +} + a:hover { + color: #f7931e; text-decoration: underline; } -/* Mike section styling */ -.mike-section { - margin-top: 30px; - max-width: 600px; - margin-left: auto; - margin-right: auto; - padding: 20px; - background-color: rgba(50, 50, 50, 0.3); - border-radius: 8px; +/* Responsive Design */ +@media (max-width: 768px) { + header h1 { + font-size: 2rem; + } + + .subtitle { + font-size: 1rem; + } + + .card { + padding: 1.5rem; + } + + .search-box { + flex-direction: column; + } + + .search-box input, + .search-box button { + width: 100%; + } + + .status-section { + grid-template-columns: 1fr; + } } -.mike-section h2 { - color: #f0f0f0; - margin-top: 0; +/* Loading Animation */ +@keyframes pulse { + 0%, 100% { + opacity: 1; + } + 50% { + opacity: 0.5; + } } -.mike-section p { - line-height: 1.6; - margin-bottom: 15px; -} \ No newline at end of file +.status-content:empty::after { + content: 'Loading...'; + animation: pulse 1.5s ease-in-out infinite; +} diff --git a/templates/assets/img/favicon.png b/templates/assets/img/favicon.png index b32546439c0e3ef8050bd021c17f9d49df47165a..03772ad5ffd98abef20a13941f590ccf1094a0c3 100644 GIT binary patch literal 63873 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

Y5JU^LJ3Ll~U-@w#NIc8In2h(? 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�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 diff --git a/templates/index.html b/templates/index.html index f3aac2c..fa0c5e2 100644 --- a/templates/index.html +++ b/templates/index.html @@ -4,57 +4,331 @@ - Nathan.Woodburn/ + Fire Explorer - Handshake Blockchain Explorer -

-
-

Nathan.Woodburn/

- The current date and time is {{datetime}} -
+
+
+

Fire Icon Fire Explorer

+

Handshake Blockchain Explorer

+
+
-
-
-

Pulling data

- This is a test content area that will be updated with data from the server. -
-
- -
+
+ +
+
+

Node Status

+
Loading...
+
+
+

Chain Info

+
Loading...
+
+
+

Mempool

+
Loading...
+
+
+ + +
+
+

Search Blockchain

+
+ + + + +
+ + +
+ +
+
+ + +
+ +
+
+ + +
+ +
+
+ + +
+ + +
+
+
+
+ + +
+
+

Coin Lookup

+ +
+
+
+
+ +
+
+

Fire Explorer - Handshake Blockchain Explorer | Powered by HNSAU & Fire HSD

+

Last updated: {{ datetime }}

+
+
+ // Format chain data nicely + function formatChainData(chain) { + return ` +
+
Height: ${chain.height.toLocaleString()}
+
Progress: ${(chain.progress * 100).toFixed(2)}%
+
TX Count: ${chain.state.tx.toLocaleString()}
+
Coins: ${chain.state.coin.toLocaleString()}
+
Value: ${(chain.state.value / 1e6).toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2})} HNS
+
Burned: ${(chain.state.burned / 1e6).toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2})} HNS
+
Tip: ${chain.tip}
+
Tree Root: ${chain.treeRoot}
+
+ `; + } + // Format mempool data nicely + function formatMempoolData(mempool) { + // Check if mempool is an array of transaction IDs + if (Array.isArray(mempool)) { + return ` +
+
Transactions: ${mempool.length.toLocaleString()}
+ +
+ `; + } + // Fallback for object format + return ` +
+
Transactions: ${mempool.tx || 0}
+
Size: ${mempool.size ? (mempool.size / 1024).toFixed(2) + ' KB' : '0 KB'}
+
Orphans: ${mempool.orphans || 0}
+
Claims: ${mempool.claims || 0}
+
Airdrops: ${mempool.airdrops || 0}
+
+ `; + } + + // Display helper + function displayResult(elementId, data, key = null) { + const element = document.getElementById(elementId); + if (data.error) { + element.innerHTML = `
Error: ${data.error}
`; + } else { + if (key && data[key] !== undefined) { + // If the value is a simple string, display it without JSON formatting + if (typeof data[key] === 'string') { + element.innerHTML = `
${data[key]}
`; + } else { + element.innerHTML = `
${JSON.stringify(data[key], null, 2)}
`; + } + return; + } + element.innerHTML = `
${JSON.stringify(data, null, 2)}
`; + } + } + + // Load status on page load + async function loadStatus() { + const nodeStatus = await apiCall('status'); + displayResult('node-status', nodeStatus, 'status'); + + const chainStatus = await apiCall('chain'); + if (chainStatus.chain) { + document.getElementById('chain-status').innerHTML = formatChainData(chainStatus.chain); + } else { + displayResult('chain-status', chainStatus); + } + + const mempoolStatus = await apiCall('mempool'); + if (mempoolStatus && !mempoolStatus.error) { + document.getElementById('mempool-status').innerHTML = formatMempoolData(mempoolStatus); + } else { + displayResult('mempool-status', mempoolStatus); + } + } + + // Search functions + async function searchBlock() { + const blockId = document.getElementById('block-input').value.trim(); + if (!blockId) { + alert('Please enter a block height or hash'); + return; + } + const data = await apiCall(`block/${blockId}`); + displayResult('block-result', data); + } + + async function searchHeader() { + const blockId = document.getElementById('block-input').value.trim(); + if (!blockId) { + alert('Please enter a block height or hash'); + return; + } + const data = await apiCall(`header/${blockId}`); + displayResult('block-result', data); + } + + async function searchTx() { + const txId = document.getElementById('tx-input').value.trim(); + if (!txId) { + alert('Please enter a transaction ID'); + return; + } + const data = await apiCall(`tx/${txId}`); + displayResult('tx-result', data); + } + + async function searchAddressTx() { + const address = document.getElementById('address-input').value.trim(); + if (!address) { + alert('Please enter an address'); + return; + } + const data = await apiCall(`tx/address/${address}`); + displayResult('address-result', data); + } + + async function searchAddressCoins() { + const address = document.getElementById('address-input').value.trim(); + if (!address) { + alert('Please enter an address'); + return; + } + const data = await apiCall(`coin/address/${address}`); + displayResult('address-result', data); + } + + async function searchName() { + const name = document.getElementById('name-input').value.trim(); + if (!name) { + alert('Please enter a name'); + return; + } + const data = await apiCall(`name/${name}`); + displayResult('name-result', data); + } + + async function searchNameResource() { + const name = document.getElementById('name-input').value.trim(); + if (!name) { + alert('Please enter a name'); + return; + } + const data = await apiCall(`nameresource/${name}`); + displayResult('name-result', data); + } + + async function searchNameSummary() { + const name = document.getElementById('name-input').value.trim(); + if (!name) { + alert('Please enter a name'); + return; + } + const data = await apiCall(`namesummary/${name}`); + displayResult('name-result', data); + } + + async function searchNameHash() { + const nameHash = document.getElementById('namehash-input').value.trim(); + if (!nameHash) { + alert('Please enter a name hash'); + return; + } + const data = await apiCall(`namehash/${nameHash}`); + displayResult('name-result', data); + } + + async function searchCoin() { + const coinHash = document.getElementById('coin-hash').value.trim(); + const coinIndex = document.getElementById('coin-index').value.trim(); + if (!coinHash || !coinIndex) { + alert('Please enter both coin hash and index'); + return; + } + const data = await apiCall(`coin/${coinHash}/${coinIndex}`); + displayResult('coin-result', data); + } + + // Load status when page loads + window.addEventListener('load', loadStatus); + + // Refresh status every 30 seconds + setInterval(loadStatus, 30000); + \ No newline at end of file