
dawabit_substreams
Package ref
dawabit-substreams@v0.2.0Run package
CLI
Run map_market_activity from the command line.
substreams run dawabit-substreams@v0.2.0 map_market_activity -e robinhoodsubstreams auth or directly on thegraph.market (see docs).README
DaWabit Substreams
DaWabit Substreams provides protocol discovery and market activity data for the DaWabit ReLaunchpad on Robinhood Chain Mainnet.
The package follows the complete ReLaunchpad market lifecycle:
ReLaunchFactory
|
| CurveCreated
v
Dynamic Bonding Curve
|
| CurveBuy / CurveSell / lifecycle events
v
GraduationRouter
|
| LiquiditySeeded
v
Dynamic Uniswap V2 Pair
|
| Swap / Sync / Mint / Burn
v
Post-graduation AMM Market
Network
- Network: Robinhood Chain Mainnet
- Substreams network identifier:
robinhood - Initial protocol deployment block:
66552064
Protocol Contracts
| Contract | Address |
|---|---|
| ReLaunchFactory | 0x0e54a12db2d6b8f309269ef98f8b9c2764aa3a92 |
| ReLaunchTradeRouter | 0x48acf9c62384a6c15cca80f6307cc29a5be2580b |
| GraduationRouter | 0x5ecc1ab2ca5e11629fce19495669dfbe0e78c3d4 |
| ProtocolLiquidityVault | 0x4c693c74edf24520154d5ac0af35a8ab5530b663 |
| ProtocolFeeVault | 0xbc3aa39470ae2a71df23af38ff98d26d44317332 |
Core Modules
map_curve_discoveries
Indexes CurveCreated events emitted by ReLaunchFactory.
Each discovered bonding curve includes:
- Curve address
- Token address
- Quote token address
- Creator
- Curve allocation
- Liquidity reserve
- Starting price
- Slope
- Graduation threshold
- Token decimals
- Creation block
- Creation transaction
store_curves
Persists dynamically created bonding curves.
Primary key format:
curve:<curve_address>
This allows downstream modules to recognize ReLaunchpad bonding curves without hardcoding every deployed curve address.
map_curve_activity
Processes activity emitted by dynamically discovered bonding curves.
Canonical trade events:
CurveBuyCurveSell
Lifecycle and supplemental events:
ActivatedCurveExactInputBuyCurveStateChangedGraduated
Bought and Sold are intentionally not treated as canonical trades because the bonding curve emits them alongside CurveBuy and CurveSell.
This prevents downstream trade and volume double-counting.
Graduation and AMM Discovery
map_amm_discoveries
Indexes LiquiditySeeded events emitted by GraduationRouter.
LiquiditySeeded establishes the canonical relationship:
bonding curve -> graduated AMM pair
Each discovered AMM pool includes:
- Pair address
- Originating bonding curve
- Token address
- Quote token address
- Token amount seeded
- Quote amount seeded
- LP liquidity minted
- V2
token0 - V2
token1 - Whether the ReLaunchpad token is
token0 - Block number
- Transaction hash
Uniswap V2 orders pair assets by address, so the ReLaunchpad token cannot be assumed to always be token0.
store_amm_pools
Persists graduated AMM pools using two indexes:
pair:<pair_address>
curve_pool:<curve_address>
This supports lookup in either direction:
pair -> originating ReLaunchpad market
curve -> graduated AMM pair
AMM Activity
map_amm_activity
Processes activity emitted by dynamically discovered post-graduation Uniswap V2 pairs.
Indexed events:
SwapSyncMintBurn
The module preserves raw Uniswap V2 values:
amount0
amount1
amount0_in
amount1_in
amount0_out
amount1_out
reserve0
reserve1
It also provides normalized ReLaunchpad semantics:
token_amount_in
quote_amount_in
token_amount_out
quote_amount_out
token_reserve
quote_reserve
token_amount
quote_amount
This allows downstream bots, indexers, aggregators, and analytics systems to consume the market without independently reproducing Uniswap V2 token ordering.
Canonical Market Feed
map_market_activity
map_market_activity is the canonical public feed for bots, aggregators, indexers, and other market-data consumers.
It combines both ReLaunchpad trading stages into one ordered stream:
Bonding Curve
|
| CurveBuy / CurveSell / lifecycle
v
map_curve_activity
|
+------------------+
|
v
map_market_activity
^
|
+------------------+
|
map_amm_activity
^
| Swap / Sync / Mint / Burn
|
Graduated AMM
Each record identifies its market stage as either:
CURVE
AMM
The envelope includes:
- Market address
- Curve address
- Pair address
- Token address
- Quote token address
- Block number
- Transaction hash
- Ordinal
- Event type
- Whether the event represents a canonical trade
The original CurveActivity or AmmActivity record is also embedded so consumers retain access to the complete stage-specific data.
This allows consumers to follow a ReLaunchpad market through its full lifecycle using a single Substreams output module.
Raw Protocol Modules
The package also includes the original static raw protocol modules:
map_eventsmap_callsmap_events_calls
These expose lower-level events and calls for the statically configured ReLaunchpad contracts.
Build
substreams build
The v0.2.0 package builds as:
dawabit-substreams-v0.2.0.spkg
Run on Robinhood Chain
Canonical Market Activity
substreams run \
-e mainnet.robinhood.streamingfast.io:443 \
substreams.yaml \
map_market_activity \
--start-block 66552064 \
-o json
Bonding Curve Activity
substreams run \
-e mainnet.robinhood.streamingfast.io:443 \
substreams.yaml \
map_curve_activity \
--start-block 66552064 \
-o json
AMM Discovery
substreams run \
-e mainnet.robinhood.streamingfast.io:443 \
substreams.yaml \
map_amm_discoveries \
--start-block 66552064 \
-o json
Post-Graduation AMM Activity
substreams run \
-e mainnet.robinhood.streamingfast.io:443 \
substreams.yaml \
map_amm_activity \
--start-block 66552064 \
-o json
Authentication
A Substreams API token can be supplied through a local .substreams.env file.
The following local/generated files are excluded from source control:
.substreams.env
target/
*.spkg
Repository
Modules
Execution graph
Output
contract.v1.CallsOutput
contract.v1.EventsOutput
contract.v1.EventsCallsInputs
Store value
proto:contract.v1.DiscoveredAmmPoolUpdate policy
set
Inputs
Store value
proto:contract.v1.DiscoveredCurveUpdate policy
set
Inputs
Show 4 dependencies
Output
sf.substreams.ethereum.v1.Calls
Output
sf.substreams.ethereum.v1.Events
`index_calls` sets the following keys on the block: * Call contract call_to:0x0123456789abcdef0123456789abcdef01234567 (contract address in hex, prefixed by 0x) * Caller call_from:0x0123456789abcdef0123456789abcdef01234567 (caller address in hex, prefixed by 0x) * Call method call_method:0x01234567 (4 bytes of method signature in hex, prefixed by 0x)
Output
sf.substreams.index.v1.Keys
Inputs
`index_events` sets the following keys on the block: * Event signatures evt_sig:0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef (signature in hex, prefixed by 0x) * Event address evt_addr:0x0123456789abcdef0123456789abcdef01234567 (address in hex, prefixed by 0x)
Output
sf.substreams.index.v1.Keys
Inputs
