A comprehensive subgraph for indexing the Picule decentralized protocol on Monad blockchain. This subgraph tracks DEX operations, NFT marketplace, ICO activities, token launches, and liquidity management.
Picule is a decentralized protocol for automated ERC20 token exchange that makes NFTs valuable on Monad blockchain. The protocol includes:
- DEX Factory & Pairs - Automated market maker for token swaps
- Token Launch Manager - Create and launch new ERC20 tokens with NFT collections
- ICO System - Crowdfunding mechanism for new projects
- NFT Marketplace - Trade NFTs with integrated pricing
- Funds Manager - LP token locking and bonus distribution system
| Contract | Address | Description |
|---|---|---|
| Factory | 0x88f935cc12efc73f1590bfc12178539351b145c5 |
DEX pair factory |
| TokenLaunchManager | 0xbb29be458dcaa439f1259bc9b42a7240b1d37af5 |
Token creation system |
| ICO | 0x7927a4bd40ab5a60c4a319ea55424469560e947b |
ICO management |
| Marketplace | 0xe8c3490eed91ba902731ea2bbb69426282604012 |
NFT marketplace |
| NFTPicule | 0x1a91f666527b04fb8dfe8ae05fd2e628e9370bad |
Main NFT collection |
| MPC Token | 0xe91df27c401084ec11998766d64717f998b47b33 |
Protocol token |
Global factory statistics
totalVolumeUSD- Total trading volume in USDtotalLiquidityUSD- Total value lockedpairCount- Number of trading pairstxCount- Total transactions
Trading pair information
token0/token1- Paired tokensreserve0/reserve1- Token reservesvolumeUSD- Pair trading volumeliquidityProviderCount- Number of LPstoken0Price/token1Price- Current exchange rates
ERC20 token data with price tracking
symbol/name/decimals- Token metadataderivedMON- Price in MON (reference token)tradeVolumeUSD- Trading volumetotalLiquidity- Token liquidity across pairs
Price oracle data
monPrice- Current MON/USD price from external BubbleFi pool
Individual swap transactions
amountUSD- Swap value in USDamount0In/amount1In- Input amountsamount0Out/amount1Out- Output amountssender/to- Transaction participants
Liquidity provision events
amount0/amount1- Token amountsamountUSD- USD valueliquidity- LP tokens minted/burned
User liquidity positions
liquidityTokenBalance- LP token holdingsaccount- Position ownerpair- Associated trading pair
Individual NFT tracking
identifier- Token IDowner- Current owneruri- Metadata URIprice- Current marketplace price
NFT collection data
name/symbol- Collection metadatatotalSupply- Total minted tokens
Active NFT listings
price- Listing priceactive- Listing statusseller- NFT ownercreatedAt/updatedAt- Timestamps
Completed NFT sales
price- Sale pricebuyer/seller- Transaction partiestimestamp- Sale time
Global marketplace metrics
totalSales- Number of completed salestotalVolume- Trading volumetotalListings- Active listings count
Crowdfunding campaigns
totalContributions- Raised amounttotalContributors- Number of backerscreator- Project creatoractive- Campaign status
Individual ICO contributions
amount- Contribution amountcontributor- Backer addresstimestamp- Contribution time
Created token projects
token- Associated ERC20 tokennft- Associated NFT collectionfundsManager- Liquidity management contractcreator- Project creator
Launched tokens
totalSupply- Token supplyderivedUSD- USD pricetotalHolders- Number of holders
Liquidity management
totalLockedValue- Locked LP tokenstotalBonusClaimed- Distributed rewards
PiculeDayData- Protocol daily statsPairDayData- Pair daily statsTokenDayData- Token daily stats
PairHourData- Pair hourly statsTokenHourData- Token hourly OHLC data
TokenMinuteData- Token minute-level OHLC data for real-time charts
The subgraph uses a hybrid pricing system:
- External Price Oracle: MON/USDC price from BubbleFi pool (
0xEc8eb233538aBFc97f337da8ec3d1b57fbe31895) - Internal Price Calculation: Token prices derived through trading pairs using MON as reference
- Whitelist System: USDC and MON as trusted pricing tokens
{
piculeFactory(id: "0x4c4a92931a3f0a4fb369c61fd990efce28b044e7") {
totalVolumeUSD
totalLiquidityUSD
pairCount
txCount
}
}{
pairs(orderBy: volumeUSD, orderDirection: desc, first: 10) {
id
token0 {
symbol
}
token1 {
symbol
}
volumeUSD
reserveUSD
txCount
}
}{
tokenDayDatas(
where: { token: "0x..." }
orderBy: date
orderDirection: desc
first: 30
) {
date
priceUSD
dailyVolumeUSD
totalLiquidityUSD
}
}{
swaps(orderBy: timestamp, orderDirection: desc, first: 100) {
pair {
token0 {
symbol
}
token1 {
symbol
}
}
amountUSD
sender
timestamp
}
}{
sales(orderBy: timestamp, orderDirection: desc, first: 20) {
price
buyer {
id
}
seller {
id
}
nftContract
tokenId
timestamp
}
}{
icoRequests(where: { active: true }) {
numOfRequest
totalContributions
totalContributors
creator {
id
}
createdAt
}
}- Blockchain: Monad Testnet
- API Version: 0.0.7
- Spec Version: 0.0.8
The subgraph follows a modular architecture with:
- Common utilities for price calculations, time aggregations, and helpers
- Dedicated mappings for each contract type
- Template contracts for dynamically created pairs, tokens, and NFTs
- Comprehensive entity relationships for complex queries