NFT Architecture
Rainbow uses a specialized store for NFT data:NFT Data Structure
Viewing NFTs
Collection View
NFTs are organized by collection:Collections List
Main view shows all collections:
- Collection name and icon
- Number of NFTs owned
- Floor price (if available)
- Total collection value
Collection Details
Tap collection to see:
- All NFTs in that collection
- Grid or list view
- Individual NFT details
- Collection statistics
Collection Organization
Collections can be:- Expanded/Collapsed: Toggle visibility
- Reordered: Drag to rearrange (coming soon)
- Favorited: Pin important collections
- Hidden: Hide unwanted collections
Fetching NFTs
NFTs are fetched with pagination:Fetching Process
Initial Load
First page of NFTs loaded:
- Default limit: 50 NFTs
- Sorted by collection
- Most recent first
Parse Response
NFTs processed:
- Grouped by collection
- Metadata enriched
- Images preloaded
- Stored in maps
NFT Display Features
Image Rendering
- IPFS Support: Resolves IPFS URLs
- Video/Animation: Plays animations inline
- High Resolution: Full-size image viewing
- Lazy Loading: Images loaded as scrolled
Metadata Display
- Basic Info
- Traits
- History
- Market Data
Always shown:
- NFT name
- Collection name
- Token ID
- Description
NFT Actions
Actions available for each NFT:Send
Transfer NFT to another wallet:
- Enter recipient address
- Confirm gas fees
- Sign transaction
- NFT transferred on-chain
View on OpenSea
Open NFT marketplace:
- Direct link to OpenSea
- See listing details
- Purchase if listed
- View collection stats
Share
Share NFT:
- Generate shareable link
- Share image
- Copy contract/token ID
Hide
Hide unwanted NFTs:
- Spam/scam NFTs
- Unwanted airdrops
- Can unhide later
Multi-Chain NFTs
Rainbow supports NFTs across multiple chains:- Ethereum (Most NFT collections)
- Polygon (Lower gas fees)
- Arbitrum (L2 NFTs)
- Optimism (L2 NFTs)
- Base (Emerging ecosystem)
- Zora (Creator-focused)
Cross-Chain Display
NFTs shown with chain indicator:- Chain logo badge
- Network name
- Filter by chain
- Per-chain collection stats
Showcase Feature
Curate featured NFTs:Showcase Features
- Handpicked NFTs: Select favorite NFTs
- Profile Display: Shows in wallet profile
- Any Collection: Mix NFTs from different collections
- Reorderable: Arrange in preferred order
Add to Showcase
From NFT details:
- Tap “Add to Showcase”
- NFT added to featured collection
- Appears in profile
Spam NFT Management
Unwanted NFTs are common:Spam Detection
Automatic spam indicators:- Unknown collections
- Suspicious metadata
- Mass airdrops
- Scam/phishing attempts
Hiding Spam
Performance Optimizations
Image Loading
- Progressive Loading: Low-res preview first
- Caching: Images cached locally
- Lazy Loading: Only load visible NFTs
- Thumbnail Generation: Smaller previews for lists
Data Fetching
- Pagination: Load NFTs in batches
- Collection-Based: Fetch by collection when expanded
- Background Refresh: Update in background
- Stale-While-Revalidate: Show cached, update behind scenes
State Management
NFT Metadata Standards
Rainbow supports multiple metadata standards:ERC-721
Standard NFT:ERC-1155
Multi-edition NFT:IPFS Resolution
Automatic IPFS gateway resolution:Collection Statistics
Per-collection stats shown:- Total Owned: Number of NFTs you own
- Total Supply: Total NFTs in collection
- Floor Price: Lowest listed price
- Your Holdings Value: Estimated value
- Top Trait: Most valuable trait you own
Related Features
Collectibles
Digital collectibles and poaps
Assets Overview
All asset management features
Token List
Managing fungible tokens