All packages

dawabit_substreams

bizznezz89
v0.2.0/5 downloads/Repository

Package ref

dawabit-substreams@v0.2.0

Run package

CLI

Run map_market_activity from the command line.

substreams run dawabit-substreams@v0.2.0 map_market_activity -e robinhood
Authenticate by running substreams 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

ContractAddress
ReLaunchFactory0x0e54a12db2d6b8f309269ef98f8b9c2764aa3a92
ReLaunchTradeRouter0x48acf9c62384a6c15cca80f6307cc29a5be2580b
GraduationRouter0x5ecc1ab2ca5e11629fce19495669dfbe0e78c3d4
ProtocolLiquidityVault0x4c693c74edf24520154d5ac0af35a8ab5530b663
ProtocolFeeVault0xbc3aa39470ae2a71df23af38ff98d26d44317332

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:

  • CurveBuy
  • CurveSell

Lifecycle and supplemental events:

  • Activated
  • CurveExactInputBuy
  • CurveStateChanged
  • Graduated

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:

  • Swap
  • Sync
  • Mint
  • Burn

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_events
  • map_calls
  • map_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

https://github.com/bizznezz89/dawabit-substreams

Modules

Execution graph

14 modules
Show 4 dependencies
map

ethcommon:all_calls

`all_calls` gives you all the calls in a block (including internal calls), with basic block hash/number/timestamp and transaction hash

Output

sf.substreams.ethereum.v1.Calls

map

ethcommon:all_events

`all_events` gives you all the events in a block (from successful transactions), with basic block hash/number/timestamp and transaction hash

Output

sf.substreams.ethereum.v1.Events

blockIndex

ethcommon:index_calls

`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

blockIndex

ethcommon:index_events

`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