This is the repository to integrate, contain all information about projects/chains/assets available on SubWallet's products.
erDiagram
CHAIN {
string slug "contains basic, general, non-tech information about a blockchain"
string name
string logo
string description
enum status "ACTIVE | INACTIVE | STOPPED: to show the current state of a chain"
}
EVM_CHAIN {
int chainId
string hexChainId
string blockExplorer
}
SUBSTRATE_CHAIN {
int paraId
string genesisHash
int addressPrefix
string category "RELAYCHAIN | PARACHAIN"
}
CHAIN_PROVIDER {
string endpoint
string providerMode
}
CHAIN_ASSET {
string originChain FK "The chain which token originated from"
int multiChainAssetId FK "points to a multi-chain asset"
string symbol
int decimals
string priceId "higher priority than multi-chain asset's priceId - using CoinGecko"
string minAmount
enum assetType "NATIVE | ERC20 | ERC721 | PSP34 | PSP22 | LOCAL"
}
MULTI_CHAIN_ASSET {
string originChainAssetId FK "point to the origin asset"
string slug
string name
string symbol
string origin
string priceId
}
ASSET_REF {
int id_ PK "showing how a token can be converted to another"
string srcTokenId FK
string destTokenId FK
string path "XCM | SWAP : path which asset can be converted"
}
PROJECT_CATEGORY {
string category
}
PROJECT {
string name
string description
string appUrl
string discord
string twitter
string github
string telegram
string website
enum status
}
CHAIN ||--o| EVM_CHAIN : is
CHAIN ||--o| SUBSTRATE_CHAIN : is
CHAIN_ASSET }|--|| MULTI_CHAIN_ASSET: "can be"
CHAIN_ASSET ||--|| MULTI_CHAIN_ASSET: "originate from"
ASSET_REF }o--o{ CHAIN_ASSET : has
CHAIN ||--|{ CHAIN_ASSET : has
CHAIN }o--o{ PROJECT : has
PROJECT }|--|{ PROJECT_CATEGORY : belongs
CHAIN_PROVIDER }|--|| CHAIN : has
PROJECT }o--o{ CHAIN_ASSET: has
Note: The current interfaces and json files do not necessarily follow this exact schema. The schema demonstrates the abstraction and relationships of the data
Please refer to this guide to start contributing to the project