awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
vasturiano avatar

vasturiano/3d-force-graph

0
View on GitHub↗
6,147 stars·992 forks·HTML·MIT·37 viewsvasturiano.github.io/3d-force-graph/example/large-graph↗

3d Force Graph

3d-force-graph is a WebGL-accelerated component for rendering interactive network graphs in three-dimensional space. Built on the ThreeJS library, it positions nodes using a force-directed physics simulation that can be driven by either a D3-force or ngraph engine, producing dynamic layouts that users can rotate, zoom, and pan using mouse, keyboard, or touch controls.

The component distinguishes itself through comprehensive camera control capabilities, including programmatic positioning, animated transitions, automatic timed orbiting, and zoom-to-fit functionality that frames all nodes within the viewport. It supports data-driven styling of both nodes and links, allowing color, size, opacity, and custom 3D geometry to be controlled per element based on data attributes. Animated directional particles can travel along links to visualize flow and connections, while curved link rendering and self-loop display help reduce visual clutter in dense graphs.

User interaction extends beyond basic navigation to include click-to-expand node hierarchies, click-to-highlight connected elements, and dragged node fixing that locks positions against the force simulation. The component also provides coordinate translation between 3D graph space and 2D screen coordinates, direct access to the underlying ThreeJS scene and camera for custom extensions, and post-processing effects like bloom. Graph data can be loaded from JavaScript objects or JSON sources, and labels can be added to nodes and links using text, HTML, or custom elements.

Features

  • WebGL Rendering Pipelines - Renders 3D graphics using the ThreeJS library on top of WebGL for hardware-accelerated scene composition.
  • ThreeJS Force-Directed Components - A ThreeJS-based component that renders interactive network graphs in 3D space with physics-driven node positioning.
  • Force-Directed Layouts - Renders interactive network graphs in 3D space using force-directed physics for node positioning.
  • 3D Scene Navigators - Provides WASD and mouse look-around controls for navigating the 3D graph scene.
  • Zoom Controls - Provides zoom controls to scale the view in and out using mouse wheel or middle-click.
  • Point Click and Hover Interactions - Responds to clicks, hovers, and drags on nodes and links for interactive graph exploration.
  • Interactive Graph Explorers - Enables navigating and inspecting complex network structures through zoom, pan, rotate, and node selection.
  • Camera Orbit Controls - Implements camera orbit controls for rotating the view around the graph by left-clicking and dragging.
  • Force-Directed Topology Graphs - Renders interactive network graphs in 3D space using force-directed physics for node positioning.
  • WebGL Force-Directed Components - A WebGL-accelerated force-directed graph component for visualizing node-link diagrams in three dimensions.
  • Node and Edge Customizations - Ships data-driven customization of node and link appearance including color, size, opacity, and 3D geometry.
  • Data-Driven Styling - Applies data-driven styling to nodes, controlling size, color, opacity, and custom 3D geometry per element.
  • ThreeJS Graph Renderers - An interactive 3D graph visualization built on the ThreeJS WebGL library for rendering network data.
  • Force-Directed Layout Physics - Selects between D3-force and ngraph physics backends to compute node positions and layout dynamics.
  • Data-Driven Edge Styling - Controls width, color, opacity, curvature, and custom 3D geometry of each graph edge based on data attributes.
  • Data-Driven Node Styling - Controls node visual properties like size, color, opacity, and 3D geometry based on data attributes.
  • Network Graph Navigators - Provides mouse and keyboard controls for rotating, zooming, and panning 3D network graph visualizations.
  • Graph Interactions - Provides click, hover, and drag interactions on nodes, links, and the background for graph navigation.
  • Data-Driven Graph Styling - Provides comprehensive data-driven styling of nodes and links with color, size, opacity, and custom geometry.
  • Data-Driven Graph Edge Styling - Controls width, color, opacity, curvature, and visibility of each graph edge based on data attributes.
  • Graph Navigation and Selection - Provides mouse and touch navigation for rotating, zooming, and panning the 3D graph view.
  • 3D Scene Navigators - Provides WASD and mouse look-around controls for navigating the 3D graph scene.
  • Zoomable Pan-and-Scan Controls - Provides pan navigation to move the viewport laterally by right-clicking and dragging.
  • Pan Controls - Provides pan controls to shift the visible area of the graph by right-clicking and dragging.
  • Zoom Controls - Provides zoom controls to scale the view in and out using mouse wheel or middle-click.
  • Animated Particle Visualizations - Animates directional particles along link paths to visualize flow and connections between nodes.
  • Graph Edge Particles - Renders animated particles that travel along directed edges to visualize connection flow in graphs.
  • Graph Data Loaders - Loads graph data from JavaScript objects or JSON sources, defining nodes and links with identifiers.
  • JSON Data Import - Imports graph structure from JSON files or objects, specifying node IDs and link sources and targets.
  • Physics Engine Selectors - Allows selecting between D3-force or ngraph physics engines and configuring simulation dimensions.
  • Camera Positioning Functions - Ships programmatic camera positioning, rotation, and zoom functions for framing 3D graph views.
  • Automatic Orbits - Provides timed automatic camera orbiting for presentations and monitoring of 3D graphs.
  • Camera Animations - Moves the camera to a specified position or to frame all nodes with optional smooth transitions.
  • Camera View Controllers - Provides camera view control with positioning, animated transitions, and automatic zoom-to-fit.
  • Animation and View Controllers - Provides controls to pause or resume animation, position the camera, and fit the view to show all nodes.
  • Edge Flow Animations - Animates directional particles along graph links to visualize flow and connections between nodes.
  • Text Node Labels - Displays text labels on graph nodes for direct readability in the 3D scene.
  • Spatial Text Rendering - Displays node labels as 2D sprites overlaid on the 3D scene for readable text annotations.
  • ThreeJS Scene Accessors - Provides access to the underlying 3D scene, camera, and renderer for custom extensions.
  • ThreeJS Scene Object Accessors - Provides direct access to the underlying ThreeJS scene, camera, and renderer for custom extensions.
  • Graph Simulation Tuners - Enables tuning physics engine parameters and layout constraints for force-directed graph simulations.
  • Graph Link Flow Particles - Renders moving particles along graph links to indicate direction and flow between connected nodes.
  • Node-Emitted Edge Particles - Launches animated particles from a node along its connecting links to visualize data flow or traversal paths.
  • Custom Node and Edge Geometries - Applies per-node and per-link visual properties using ThreeJS geometries and materials driven by data attributes.
  • Dragged Node Position Fixing - Locks a node's position after dragging, preventing the force simulation from pulling it back.
  • Graph Node Expand-Collapse - Expands or collapses a node's connected neighbors on click to reveal or hide sub-graphs.
  • Curved Graph Edges - Draws edges as arcs between nodes to visually distinguish connections and reduce visual clutter.
  • Click-to-Expand Node Hierarchies - Enables drill-down exploration by revealing or hiding child nodes when clicking a parent node.
  • Graph Element Annotations - Provides annotation capabilities for graph nodes and links using text, HTML, or custom elements.
  • Single Node Selection - Selects individual graph nodes by clicking for targeted interactions like highlighting or dragging.
  • Graph Node Highlighting - Highlights a clicked node and its links while dimming the rest of the graph for focused inspection.
  • Viewport Fitting Controls - Adjusts the camera to frame all nodes and links within the viewport automatically.

Star history

Star history chart for vasturiano/3d-force-graphStar history chart for vasturiano/3d-force-graph

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to 3d Force Graph

Similar open-source projects, ranked by how many features they share with 3d Force Graph.
  • vasturiano/force-graphvasturiano avatar

    vasturiano/force-graph

    2,051View on GitHub↗

    This project is a high-performance library for rendering interactive, force-directed network visualizations within an HTML5 canvas. It provides a physics-based engine that calculates node positioning through simulated attraction and repulsion forces, enabling the representation of complex relational data structures as dynamic, navigable graphs. The library distinguishes itself through its ability to handle large-scale datasets containing thousands of nodes and links while maintaining interface responsiveness. It offers granular control over the visual representation of data, allowing for cust

    JavaScriptcanvasd3jsforce
    View on GitHub↗2,051
  • vasturiano/react-force-graphvasturiano avatar

    vasturiano/react-force-graph

    2,983View on GitHub↗

    react-force-graph is a React component for rendering interactive 2D and 3D network visualizations using a force-directed layout engine. It functions as an interactive data visualization library that employs D3-force simulations to manage node physics and relationship positioning. The library includes a 3D visualization tool that utilizes ThreeJS to render complex nodes and links within an immersive space. It provides programmatic control over zooming, panning, and viewport navigation, alongside a coordinate-to-object picking mechanism for handling user interactions like clicks, hovers, and dr

    HTML3daugmented-realitycanvas
    View on GitHub↗2,983
  • didi/logicflowdidi avatar

    didi/LogicFlow

    11,441View on GitHub↗

    LogicFlow is an SVG-based flowchart editing framework and visual graph editor used for building customizable business process diagrams. It serves as a customizable diagramming engine for rendering business process models, entity relationship diagrams, and unified modeling language charts. The system is characterized by a plugin-based architecture that allows developers to define specialized graphical elements and register pluggable modules. A distinctive feature is its overlay system, which positions standard HTML components on top of the SVG canvas to create interactive menus and control pan

    TypeScriptbpmndiagramdiagramming
    View on GitHub↗11,441
  • anvaka/map-of-githubanvaka avatar

    anvaka/map-of-github

    2,821View on GitHub↗
    JavaScript
    View on GitHub↗2,821
See all 30 alternatives to 3d Force Graph→

Frequently asked questions

What does vasturiano/3d-force-graph do?

3d-force-graph is a WebGL-accelerated component for rendering interactive network graphs in three-dimensional space. Built on the ThreeJS library, it positions nodes using a force-directed physics simulation that can be driven by either a D3-force or ngraph engine, producing dynamic layouts that users can rotate, zoom, and pan using mouse, keyboard, or touch controls.

What are the main features of vasturiano/3d-force-graph?

The main features of vasturiano/3d-force-graph are: WebGL Rendering Pipelines, ThreeJS Force-Directed Components, Force-Directed Layouts, 3D Scene Navigators, Zoom Controls, Point Click and Hover Interactions, Interactive Graph Explorers, Camera Orbit Controls.

What are some open-source alternatives to vasturiano/3d-force-graph?

Open-source alternatives to vasturiano/3d-force-graph include: vasturiano/force-graph — This project is a high-performance library for rendering interactive, force-directed network visualizations within an… vasturiano/react-force-graph — react-force-graph is a React component for rendering interactive 2D and 3D network visualizations using a… didi/logicflow — LogicFlow is an SVG-based flowchart editing framework and visual graph editor used for building customizable business… anvaka/map-of-github. f5/unovis — Unovis is a modular SVG and Canvas data visualization library used to build interactive charts, maps, and network… kuzudb/kuzu — Kùzu is an embedded property graph database engine designed for high-performance analytical queries and local data…