Skip to main content
Blocklight follows a modular, event-driven architecture designed for high performance and extensibility.

Component Overview

EVM Blockchains
  • Supports all EVM-compatible chains (Ethereum, Polygon, Arbitrum, Base, Optimism, Rootstock, etc.)
  • Connects via RPC/WebSocket to blockchain nodes
  • Real-time transaction monitoring
Ingestion
  • Blockchain Listeners: Connect to EVM nodes via WebSocket (preferred) or HTTP polling
  • Handles multiple chains simultaneously
Rule Engine
  • Rule Loader: Parses YAML rules and validates syntax
  • Rule Evaluator: Evaluates conditions against transactions using expression engine
Analysis
  • Transaction Analyzer: Fetches receipts (if enabled), extracts function selectors from input data (if enabled), analyzes gas usage (if enabled)
  • Contract Analyzer: Retrieves contract bytecode (if enabled) for rule evaluation
Output
  • Aggregator: Groups related findings to reduce alert noise
  • Alerter: Routes findings to configured channels (log, file, Slack, Discord, Email, Webhooks)
  • Exporters: Formats findings for external systems (NDJSON for log aggregators, SARIF for CI/CD)
API Layer
  • gRPC Server: Core API for internal communication
  • REST API: HTTP API for external integrations and dashboards
Observability
  • Prometheus Metrics: Performance and operational metrics
  • Health Checks: System health monitoring

Data Flow

  1. Ingestion: Blockchain listeners connect to EVM nodes and stream transactions in real-time
  2. Rule Loading: YAML rules are parsed, validated, and loaded into the rule engine
  3. Analysis: Transactions are analyzed by specialized analyzers (transaction, contract)
  4. Evaluation: Rule evaluator checks conditions against analyzed transaction data
  5. Aggregation: Related findings are grouped to reduce alert noise
  6. Output: Findings are routed to configured alert channels and exported in various formats
  7. Observability: Metrics and health checks provide operational visibility

Next Steps