Components Overview
Full reference for all BigBlocks components
Components Overview
BigBlocks provides 96+ production-ready components organized into logical categories.
Component Categories
Authentication Components
Core components for Bitcoin-based authentication flows.
import { AuthButton } from 'bigblocks';
// Simple authentication button
<AuthButton />
// With custom text
<AuthButton>
Sign In with Bitcoin
</AuthButton>
// With callback
<AuthButton
onSuccess={(user) => console.log('Authenticated:', user)}
/>
Key Components:
AuthFlowOrchestrator
- Complete authentication flowLoginForm
- Standalone login interfaceSignupFlow
- Multi-step signup processOAuthProviders
- OAuth provider selectionBackupImport
- Import encrypted backupsPasswordInput
- Secure password field
Profile & Identity
Manage Bitcoin Attestation Protocol (BAP) profiles.
import { ProfileCard } from 'bigblocks';
<ProfileCard
profile={{
id: 'bap123456',
address: '1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa',
name: 'Satoshi Nakamoto',
alternateName: '@satoshi',
description: 'Creator of Bitcoin',
image: 'https://api.dicebear.com/7.x/avataaars/svg?seed=satoshi',
isPublished: true
}}
showActions={true}
onEdit={() => console.log('Edit profile')}
onViewDetails={() => console.log('View details')}
/>
Key Components:
ProfileCard
- Display user profilesProfileEditor
- Edit profile informationProfileSwitcher
- Switch between identitiesProfileManager
- Complete profile systemIdentityGeneration
- Create new identities
Wallet Components
Bitcoin wallet functionality and transaction management.
Key Components:
WalletConnect
- Connect walletsWalletOverview
- Display balance and historySendBSVButton
- Send Bitcoin transactionsDonateButton
- Accept donationsTokenBalance
- Display token balancesTransactionHistory
- Show transaction list
Social Components
Build social features with on-chain interactions.
Key Components:
PostCard
- Display social postsPostButton
- Create new postsLikeButton
- Like content on-chainFollowButton
- Follow usersSocialFeed
- Content feed displayFriendsDialog
- Manage connections
Market Components
Ordinals marketplace and trading functionality.
Key Components:
MarketTable
- Display marketplace listingsCreateListingButton
- List items for saleBuyListingButton
- Purchase itemsCompactMarketTable
- Minimal market view
MetaLens Commenting System
Universal commenting for any context type.
Key Components:
MetaLensProvider
- Commenting system providerMetaLensComments
- Full commenting interfaceMetaLensBadge
- Comment count badgesMetaLensEmbed
- Embedded commentsMetaLensReactions
- Like/reaction systemMetaLensThread
- Threaded discussions
UI Primitives
Basic building blocks for your application.
import {
LoadingButton,
StepIndicator,
WarningCard,
ErrorDisplay
} from 'bigblocks';
// Loading button states
<LoadingButton loading={false}>Save</LoadingButton>
<LoadingButton loading={true}>Saving...</LoadingButton>
// Multi-step indicator
<StepIndicator
steps={['Setup', 'Configure', 'Deploy']}
currentStep={1}
/>
// Warning messages
<WarningCard title="Important Notice">
This action cannot be undone.
</WarningCard>
// Error handling
<ErrorDisplay
error="Transaction failed"
details="Insufficient balance"
/>
Key Components:
Modal
- Accessible modal dialogsLoadingButton
- Button with loading statesErrorDisplay
- Error message displaySuccessLayout
- Success confirmationsStepIndicator
- Multi-step indicatorsTerminalCodeBlock
- Code display
Advanced BAP Components
Advanced Bitcoin Attestation Protocol features.
Key Components:
KeyManager
- HD key managementBapEncryption
- Encrypt/decrypt dataFileSignature
- Sign filesKeyRotation
- Rotate keysType42KeyDerivation
- Advanced derivationShamirSecretSharing
- Split keys
Component Requirements
Provider Requirements
Most components require these providers:
<BitcoinAuthProvider config={{ apiUrl: '/api' }}>
<BitcoinQueryProvider>
<BitcoinThemeProvider>
{/* Your components */}
</BitcoinThemeProvider>
</BitcoinQueryProvider>
</BitcoinAuthProvider>
Authentication Requirements
Components are marked with requirement badges:
- No Auth Required - Works without authentication
- Auth Required - Requires signed-in user
- Funding Required - Needs BSV balance
- Droplit Required - Uses gasless transactions
Using Components
Import Components
import {
AuthButton,
ProfileCard,
WalletOverview
} from 'bigblocks';
Add Individual Components
npx bigblocks add AuthButton ProfileCard
Component Props
All components are fully typed with TypeScript. Use your IDE's IntelliSense for prop discovery or refer to individual component documentation.
Next Steps
- Browse the Component Browser for live demos
- Check Component Examples for usage patterns
- Read about Theme Customization