Files
explorer-monorepo/docs/EXPLORER_ADDITIONAL_RECOMMENDATIONS.md
2026-03-02 12:14:13 -08:00

70 lines
5.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# SolaceScanScout — Additional Recommendations
This document lists **further improvements** beyond the upgrades already implemented (Tier 13 frontend, API docs, watchlist, labels, i18n, etc.). Items are grouped by effort and dependency (frontend-only vs backend).
---
## Frontend-only (quick wins)
| Recommendation | Description | Effort |
|----------------|-------------|--------|
| **Event log decoding** | On transaction detail, decode log topics/data using contract ABI when available (fetch ABI from Blockscout for log address, match by topic0 signature). | Medium |
| **Address labels in more tables** | Use `formatAddressWithLabel()` in latest transactions (home), block detail (miner), and transaction detail (from/to) so labels appear wherever addresses are shown. | Low |
| **More i18n keys** | Add translations for common UI strings (e.g. "Back", "Export CSV", "Token Balances", "Internal Txns", "Read contract", "Write contract") and optionally add another language (e.g. French). | Low |
| **Failed tx rate in Gas widget** | If Blockscout stats expose a failed-transaction metric, show it in the Gas & Network card (e.g. "Failed (24h): 0.1%"). | Low |
| **Copy-to-clipboard on hashes** | Add a small copy icon next to transaction hash, block hash, and address in detail views; onClick copy full value and show toast "Copied". | Low |
| **Pagination on list views** | Blocks and Transactions list views currently load a fixed page (e.g. 50). Add "Next / Prev" or infinite scroll using Blockscout's `page` and `page_size`. | Medium |
---
## Frontend + existing API
| Recommendation | Description | Effort |
|----------------|-------------|--------|
| **Contract creation tx** | On address detail for contracts, if Blockscout returns `creation_tx_hash` or similar, show "Contract created in tx 0x…" with link. | Low |
| **First / last tx (address age)** | If the API exposes first and last transaction timestamp or block, show "First seen" / "Last seen" on address detail. | Low |
| **Search results list** | Instead of navigating to the first search result only, show a small list of matches (addresses, txs, blocks, tokens) and let the user pick. | Medium |
| **Token list / filters** | A dedicated "Tokens" page that lists verified tokens (if Blockscout has a tokens index) with search and optional filter by type (ERC-20 / ERC-721). | Medium |
---
## Security & compliance (plan §9)
| Recommendation | Description | Effort |
|----------------|-------------|--------|
| **Known-address labels** | Curated list of known addresses (e.g. bridge contracts, WETH, CCIP) with fixed labels (not user-editable). Could be a small JSON in the repo or fetched from a config endpoint. | LowMedium |
| **Token approval scanner** | Link to an external approval-checker (e.g. revoke.cash style) for Chain 138, or a simple "Check approvals" that deep-links to a tool with the address. No backend required for a link-only approach. | Low (link) / High (actual scanner) |
---
## Backend or new services
| Recommendation | Description | Effort |
|----------------|-------------|--------|
| **Watchlist email alerts** | Notify users when an address has new transactions (or balance change). Requires backend storage and email/sendgrid. | High |
| **Portfolio view** | Multi-address aggregation, historical balance, simple PnL. Requires historical index or third-party API. | High |
| **API keys & rate limits** | Tiered API access with keys and rate limits. Requires backend (e.g. Go API) in front of Blockscout or a proxy. | Medium (backend) |
| **Cross-chain unified view** | One view for an address across Chain 138 and other chains (e.g. Ethereum mainnet). Requires multi-chain indexer or aggregator. | High |
| **Analytics / Operator content** | Fill Analytics (Track 3) and Operator (Track 4) views with real features: e.g. network stats, bridge volume, config toggles. Depends on what the backend exposes (stats API, admin API). | MediumHigh |
---
## Operational & documentation
| Recommendation | Description |
|----------------|-------------|
| **Health/readiness endpoint** | A simple `/api/health` or `/api/ready` that returns 200 when Blockscout is up, for load balancers and monitoring. |
| **OpenAPI/Swagger** | If Blockscout serves OpenAPI, document the link in [EXPLORER_API_REFERENCE.md](EXPLORER_API_REFERENCE.md) so developers can discover parameters and response shapes. |
| **Changelog** | Keep a short `CHANGELOG.md` or "Recent changes" section in the explorer docs when you ship new features (e.g. "Token balances CSV", "Write contract", "Watchlist"). |
| **E2E tests** | Add or extend E2E tests (e.g. Playwright) for critical paths: search → address detail, block list → block detail, export CSV, theme toggle, watchlist add/remove. |
---
## Summary
- **Already done:** Tier 12 (tx/address/contract/token/NFT, gas widget, read/write contract, CSV exports, permalinks, dark mode, i18n), Tier 3 frontend (watchlist, address labels), API reference, Analytics/Operator view fix, token balances CSV, address labels in tables.
- **Highest-value next (no new backend):** Event log decoding, address labels in all tables, copy-on-click for hashes, pagination on blocks/transactions, known-address labels, and a "Check approvals" link for token approvals.
- **With backend:** Email alerts for watchlist, API keys/rate limits, portfolio, and richer Analytics/Operator content.
Use this list to prioritize the next sprint or backlog.