playermap_graph
v0.2.1
Published
A React library for intuition visualization using force-directed graphs
Readme
PlayerMap Graph
A React library for visualizing player graphs with 2D, 3D, and VR capabilities.
Features
Visualization Modes
- 2D: Classic two-dimensional visualization with force-directed layout
- 3D: Immersive three-dimensional visualization
- VR: Virtual reality mode for a fully immersive experience
Core Features
- Interactive graph exploration (click on nodes to view their relationships)
- Smart data filtering
- Detailed view of selected nodes
- Navigation history (back/forward)
- Interactive legend for node type identification
Advanced Features
- Smart data filtering with subject/predicate/object search
- Detailed node view with comprehensive information
- Claims and positions management
- Connection tracking (follows/followers)
- Activity history
- Multi-endpoint support (Base Mainnet, Base Testnet, Playground API)
Installation
npm install playermap_graphFor local usage
npm install
npm run build:libConfiguration
Endpoints
The library supports multiple endpoints configured in src/api.js:
- Base Mainnet
- Base Testnet
- Playground API (OffChain)
Agent Graph Configuration
To customize the Agent graph visualization, modify the AGENT_OBJECT_ID constant in:
src/hooks/useGraphState.jssrc/GraphVisualization.jsx
Usage
import {
GraphVisualization,
GraphVR,
NodeDetailsSidebar,
} from "playermap_graph";
function App() {
return (
<div>
{/* 2D Visualization */}
<GraphVisualization
endpoint="baseSepolia"
walletAddress="0x..."
onNodeSelect={(node) => console.log(node)}
onLoadingChange={(loading) => console.log(loading)}
/>
{/* VR Visualization */}
<GraphVR />
{/* Details Sidebar */}
<NodeDetailsSidebar />
</div>
);
}Available Components
Main Components
GraphVisualization: 2D/3D graph visualization with all featuresGraphVR: Immersive VR visualizationNodeDetailsSidebar: Detailed node sidebarGraphLegend: Interactive graph legendEndpointSelector: Endpoint selectorLoadingAnimation: Loading animation
Navigation Components
NavigationBar: Main navigation barViewModeSelector: Visualization mode selectorFilterBar: Advanced filtering bar
Detail Components
ClaimCard: Claims displayPositionCard: Positions displayActivityCard: Activity displayFollowersCard: Connections display
API and Utilities
API
api.js: Main API interfaceBase.js: Base Mainnet implementationBaseSepolia.js: Base Testnet implementation
Utilities
graphData.js: Graph data manipulation functionsnodeColors.js: Node colors configurationhooks/useGraphState.js: Graph state management
Architecture
The library uses a modular architecture with:
- State management via React Hooks
- GraphQL communication with endpoints
- Multi-endpoint support with fallback
- Data caching system
- Performance-optimized handling of large graphs
License
MIT
