CogitoMap is a cutting-edge 3D interactive visualization platform that transforms AI conversations into immersive, navigable knowledge graphs. The application uses a distinctive cyberpunk design language to represent conversation nodes as interactive bubbles and visualize the connections between different pieces of information.
- 3D Knowledge Graph: Visualize conversations as interconnected 3D nodes in a responsive environment
- Interactive Bubbles: Each concept or message appears as a 3D bubble with color-coding based on type
- Dynamic Connections: Relationship strength between nodes shown through distinctive line styles
- Cyberpunk Aesthetic: Neon-colored elements with a modern, high-tech look and feel
- Multi-Provider Support: Works with OpenAI, Anthropic, and Google Gemini
- Secure API Handling: Environment-based API key management
- Context Mapping: Automatically builds a knowledge graph from conversations
- Sentiment Analysis: Color-coding based on detected sentiment
- Agent Drones: AI agents navigate between conversation nodes with visual effects
- Parallel Conversations: Create separate conversation windows for exploring different paths
- Node Selection: Select multiple nodes to explore relationships
- Second Opinions: Compare different model perspectives on the same topics
- Bidirectional Selection: Click messages to select related nodes or nodes to highlight messages
- Node Validation: Approve or reject second opinions with visual confirmation
- Full 3D Controls: Pan, zoom, and rotate the graph for better visualization
- Selection Panel: Manage selected nodes with a dedicated interface
- Expandable Chat: Toggle between visualization and conversation views
- Enter your initial message in the chat input at the bottom
- The system will process your message and create the first node(s)
- Continue the conversation to expand the knowledge graph
- Pan: Click and drag to move around the space
- Rotate: Right-click and drag to rotate the view
- Zoom: Use the scroll wheel to zoom in and out
- Click Nodes: Select a node to focus on it
- Shift+Click: Select multiple nodes for comparison
- User Messages: Blue spheres
- AI Messages: Green spheres
- Topics: Purple icosahedrons
- Entities: Orange cubes
- Summaries: Yellow dodecahedrons
- Questions: Red octahedrons
- Hold Shift while clicking nodes to select multiple items
- Use the node panel to request a second opinion
- A new conversation window will open focusing on the selected concepts
- Second opinion nodes appear with distinctive colors
- Use the validation UI to accept or reject insights from second opinions
- Shift + Click: Multi-select nodes
- Esc: Clear all selections
- Space: Toggle between chat and visualization focus
- React with TypeScript
- Three.js with React Three Fiber for 3D rendering
- Zustand for state management
- Tailwind CSS for styling
- Express.js server
- API routing for multiple LLM providers
- PostgreSQL database support
- Authentication system
- ContextVisualizer: Main 3D visualization component
- ContextBubble: Individual node representation
- ChatInterface: Conversation UI
- ParallelWindowsManager: Handles multiple conversation windows
- AgentDrone: Animated AI agents navigating the graph
- SelectedNodesPanel: Interface for managing multi-selected nodes
- Extreme Node Distribution: Dramatically increased spatial distribution of nodes
- Reduced Visual Clutter: Removed atmospheric fog for maximum visibility
- Dynamic Positioning: Added semi-random variation to prevent node clustering
- Extended View Range: Increased camera distance and orbit controls range
- Enhanced Materials: Improved node materials for better visibility and distinction
- Larger Node Geometry: Increased size and detail of node types for clarity
- Reduced Effects: Optimized glow and particle effects to prevent overwhelming visuals
- Grid Expansion: Extended the reference grid to accommodate wider visualization
- Position Validation: Fixed critical 3D rendering issues with position handling
- API Corrections: Resolved edge creation validation errors
- Interface Improvements: Fixed incorrect edge handling in Chat Interface
For a complete list of changes, see the CHANGELOG.md file.
- Semantic Positioning: Use AI embeddings to place nodes based on meaning
- Voice Integration: Speech-to-text and text-to-speech for conversational interaction
- Collaboration: Multi-user support for team exploration of concepts
- Advanced Filters: Filter visualization by type, sentiment, or relevance
- Export Options: Save knowledge graphs for sharing or embedding
- Custom Themes: Selectable visualization styles beyond the default cyberpunk look
- Performance Optimization: Further improvements for larger knowledge graphs
# Clone the repository
git clone <repository-url>
# Install dependencies
npm install
# Start the development server
npm run dev
# Required for API connections
OPENAI_API_KEY=your_openai_key_here
# Optional for additional providers
ANTHROPIC_API_KEY=your_anthropic_key_here
GOOGLE_API_KEY=your_google_key_here
We welcome your feedback and contributions to CogitoMap! Feel free to open issues or submit pull requests on our repository.