spb/tools-spboucher-ai
Public
1{2 "aliases": [3 "D3.js",4 "Data-Driven Documents"5 ],6 "workflows": [7 "Custom interactive graphic for a web publication",8 "Map visualizations with projections and TopoJSON",9 "Building a higher-level charting component for a web app"10 ],11 "advantages": [12 "Unlimited control over visual form",13 "Mature, stable and widely documented",14 "ISC license"15 ],16 "limitations": [17 "Verbose for standard charts",18 "Requires JavaScript, SVG and DOM knowledge",19 "No built-in chart types"20 ],21 "prerequisites": [22 "A JavaScript environment (browser, Node.js, Observable)"23 ],24 "audiences": [25 "Front-end and visualization developers",26 "Data journalists"27 ],28 "alternatives": [29 "observable",30 "plotly",31 "vega-altair",32 "leaflet",33 "maplibre"34 ],35 "tags": [36 "data-visualization",37 "javascript",38 "typescript",39 "svg",40 "open-source",41 "gis"42 ],43 "use_cases": [44 "visualize-data",45 "map-geodata"46 ],47 "operating_systems": [48 "web"49 ],50 "deployment_models": [51 "embedded"52 ],53 "integrations": [54 "Observable",55 "Observable Plot",56 "React",57 "TopoJSON",58 "Svelte",59 "Vue"60 ],61 "data_formats": [62 "CSV/TSV/JSON parsing",63 "GeoJSON",64 "TopoJSON",65 "SVG and Canvas output"66 ],67 "languages": [68 "JavaScript",69 "TypeScript"70 ],71 "self_hostable": true,72 "discovery_method": "editorial-research",73 "depth": "standard",74 "editorial_status": "reviewed",75 "visibility": "public",76 "featured": false,77 "author": "batch-D",78 "slug": "d3",79 "name": "D3",80 "vendor": {81 "name": "Mike Bostock / Observable, Inc.",82 "slug": "observable-inc",83 "website": "https://d3js.org/"84 },85 "homepage_url": "https://d3js.org/",86 "docs_url": "https://d3js.org/getting-started",87 "repo_url": "https://github.com/d3/d3",88 "license_url": "https://github.com/d3/d3/blob/main/LICENSE",89 "product_type": "library",90 "product_status": "active",91 "summary": "Modular JavaScript library for bespoke, data-driven web graphics: scales, axes, shapes, layouts, geo projections, transitions and DOM selections",92 "description": "D3 (Data-Driven Documents) is a JavaScript library created by Mike Bostock and maintained with Observable under the ISC license. Rather than offering chart types, it provides low-level building blocks: selections that bind data to DOM elements, scales and axes, shape generators for lines, areas and arcs, layouts for hierarchies, forces, chords and treemaps, geographic projections and path generators, color schemes, interpolators, transitions, and zoom, drag and brush behaviors. Developers compose these into SVG or Canvas graphics with complete control over form and interaction, which is why D3 underlies most custom data journalism graphics and many higher-level libraries, including Observable Plot and parts of Vega.\n\nD3 is distributed as ES modules (one package or thirty-odd sub-packages) and runs in browsers, Node.js, Observable notebooks and Observable Framework. The cost of that flexibility is effort: standard charts take far more code than in Plotly or Altair, and knowledge of SVG, the DOM and JavaScript is required. For Python-centric researchers it is usually reached through Observable or a web front end rather than directly.",93 "capabilities": [94 "Data joins binding arrays to DOM elements",95 "Scales, axes and color schemes",96 "Shape generators and hierarchical, force and chord layouts",97 "Geographic projections and GeoJSON/TopoJSON rendering",98 "Transitions, zoom, drag and brush interactions",99 "Modular ES packages usable in browsers and Node.js"100 ],101 "categories": [102 {103 "slug": "data-visualization",104 "primary": true105 },106 {107 "slug": "web-frameworks"108 }109 ],110 "execution_modes": [111 "local"112 ],113 "interfaces": [114 "library"115 ],116 "source_model": "open-source",117 "license_spdx": "ISC",118 "pricing_model": [119 "open-source",120 "free"121 ],122 "sources": [123 {124 "url": "https://d3js.org/",125 "type": "official_site",126 "supports": [127 "name",128 "summary",129 "capabilities"130 ],131 "checked_at": "2026-11-02",132 "title": "D3 by Observable"133 },134 {135 "url": "https://d3js.org/getting-started",136 "type": "official_docs",137 "supports": [138 "capabilities",139 "interfaces"140 ],141 "checked_at": "2026-11-02",142 "title": "D3 Getting started"143 },144 {145 "url": "https://github.com/d3/d3/blob/main/LICENSE",146 "type": "license_page",147 "supports": [148 "license_spdx",149 "source_model"150 ],151 "checked_at": "2026-11-02",152 "title": "D3 LICENSE (ISC)"153 },154 {155 "url": "https://github.com/d3/d3",156 "type": "repository",157 "supports": [158 "repo_url"159 ],160 "checked_at": "2026-11-02",161 "title": "d3/d3"162 }163 ],164 "confidence": "high"165}166