TokenSee 是一个多链区块链数据的统一 API 层项目,核心功能是实时监控、解析和追踪链上交易活动。
核心功能模块
多链监控 — 支持 Ethereum、BSC、Arbitrum、Polygon、Base、Optimism、Avalanche 7 条链的实时区块扫描
交易解码管道 — 6 步流水线:获取原始交易 → ABI 解码 → 协议识别 → 语义格式化 → 内部转账追踪 → MEV 检测
协议解析 — 支持 Uniswap、Aave、GMX、Curve 等主流 DeFi 协议
实体标注 — 自动识别地址类型(交易所、VC、MM、个人钱包)
价格服务 — CoinGecko + DeFiLlama 双源,支持实时和历史价格
大额警报 — 可配置 USD 阈值的实时警报,支持 SSE 流和 Webhook 推送
聪明钱追踪 — 追踪 Paradigm、a16z、Jump Trading 等专业投资者钱包
Webhook 系统 — 带签名验证、失败重试、投递日志的可靠派发
地址富化 — GoPlus、Alchemy、Sourcify、Etherscan 多源聚合
## 一、技术栈
### 后端
| 类别 | 技术选型 | 说明 |
|---|---|---|
| **运行时** | Node.js ≥ 20 + TypeScript | 强类型保障,ESM 模块 |
| **Web 框架** | Express.js | 轻量 REST API |
| **以太坊交互** | Viem 2.x | 现代化的以太坊库,比 ethers.js 轻量 90% |
| **数据库** | PostgreSQL 16 | 实体库、预警记录、活动历史存储 |
| **缓存** | Redis 7 | 解码结果、实体标签、价格数据缓存 |
| **数据校验** | Zod | 运行时 Schema 校验 |
| **HTTP 客户端** | Axios | 外部 API 调用(CoinGecko、Etherscan 等) |
| **布隆过滤器** | bloom-filters | 地址去重过滤,减少重复预警 |
| **开发工具** | tsx | TypeScript 直接执行,热重载 |
| **测试** | Vitest | 单元测试框架 |
### 前端
| 类别 | 技术选型 | 说明 |
|---|---|---|
| **框架** | Next.js 15 (App Router) | SSR + CSR 混合渲染 |
| **语言** | React 19 + TypeScript | 现代化 React |
| **样式** | Tailwind CSS 4.x | 原子化 CSS,快速构建 UI |
| **构建工具** | Next.js 内置 Turbopack | 极快的开发启动和 HMR |
### 基础设施
| 类别 | 技术选型 | 说明 |
|---|---|---|
| **容器化** | Docker + Docker Compose | 一键启动 PostgreSQL + Redis |
| **RPC 节点** | Alchemy + Ankr + QuickNode | 多链节点,按成本优化分配 |
| **数据源** | 20+ 外部 API | 覆盖地址标签、价格、协议数据 |