Back to Explore

d3/d3-shape

GitHub
1 watchersOpen source

Last release:

d3-shape is a JavaScript module that provides data-driven shape generators for visualization, such as lines and areas. It is useful for mapping input data to visual representations through configurable accessors.

Project status

  • d3-shape appears not to be actively maintained in 2026, with the last recorded upstream push on 2023-10-06 and the most recent tagged updates on 2022-12-20 (v3.2.0), suggesting a long gap with no evidence of ongoing development.
  • The apparent update cadence is low, with versions released in 2021-06-05 (v3.0.1), 2022-01-07 (v3.1.0), and 2022-12-20 (v3.2.0), followed by a multi-year silence relative to today.

AI summary generated

AI-generated from public sources. May be inaccurate. Report

Recent updates

  • v3.2.0

    v3.2.0 adds a new digits accessor to arc, area, line, link, and symbol generators to control how many fractional digits are used when producing path output. It also renames d3.symbolX to d3.symbolTimes and includes fixes for rendering small arcs with rounded corners and for BumpRadial supporting multiple points. Additionally, it modernizes the build and dependency stack.

    Features
  • v3.1.0

    v3.1.0 introduces additional d3-shape symbols (including new stroke and fill symbol sets, plus multiple new symbol types) and adds the new d3.link export. Internally, the link generator and symbol modules were refactored to support these additions, and tests/docs were updated accordingly.

    Features
  • v3.0.1

    v3.0.1 primarily updates dependencies and adjusts the Rollup build configuration to improve reproducibility. The code diff shows no changes to the library source code APIs, only versioning, build metadata generation, and dependency lockfile updates.

  • v3.0.0

    v3.0.0 primarily modernizes d3-shape to be ESM-first (package.json "type": "module") and raises the supported Node.js version to >=12. The code diff indicates mostly packaging, tooling, and test migration work, with a small number of comment-only changes in curve implementations.

    Breaking
  • v2.1.0

    v2.1.0 adds two new curve functions, curveBumpX and curveBumpY, and exports them from the package entrypoint. The release notes also mention dependency updates, which are reflected in package.json and yarn.lock.

    Features
  • v2.0.0

    d3-shape v2.0.0 adds ES2015 requirements and introduces shorthand constructor parameters for the line, area, and symbol generators (for example, d3.line(x, y) and d3.area(x, y0, y1)). It also expands input handling so generators accept iterables, internally converting them to arrays.

    BreakingFeatures
  • v1.3.7

    v1.3.7 updates d3-shape’s stackOffsetDiverging behavior to ensure zero values are stacked at a zero baseline instead of being accumulated with the prior positive offset. The diff also updates README documentation and test coverage to match the corrected zero-stacking logic.

  • v1.3.6

    v1.3.6 mainly updates internal module import specifiers to use fully qualified file paths (including .js extensions), and tightens npm package publishing configuration. It also bumps dev dependency versions and updates the dependency lockfile. Functionality changes are not evident in the provided diff, but module resolution behavior in build tools and packaging inputs could be affected.

  • v1.3.5

    v1.3.5 is a small patch release. The code change addresses stack offset behavior for diverging stacks when only a single series is provided. The release notes mention this fix, but the diff also includes an unexpected change to the test runner behavior.

  • v1.3.4

    v1.3.4 makes a small fix related to rendering rounded arcs. The code change updates the logic used when restricting corner radii based on sector angle. The release also includes non-code documentation anchor adjustments and a version bump.