Project Information
- Name of tool/project: d3
- Project home page: https://d3js.org/
- Name of team requesting review: Growth Team
- Primary contact: Sergio Gimeno @Sgs
- Target date for deployment: we'd like to deploy it as part of the improvements in the user impact module T222310: [EPIC] Positive reinforcement: New Impact Module. Ideally as soon as possible in beta cluster and in 2-3 weeks aprox to production. The already deployed Extension:Graph already uses it in case that can speed up the process.
- Link to code repository / patchset: https://github.com/d3/d3 -> https://gerrit.wikimedia.org/r/c/mediawiki/extensions/GrowthExperiments/+/855001 is our bundle of subpackages for d3.
Description of the tool/project:
d3 is a tool for building data-driven documents. It allows to create almost infinite data visualizations.
Description of how the tool will be used at WMF:
It will help visualize the pageviews trends for edited articles in the newcomers user impact module. Ideally this module will be available for all users, not just in the newcomers homepage.
Dependencies
It relies on its own d3-* packages. Most seem self-contained but haven't scanned them all (https://github.com/d3/d3/blob/main/package.json)
Has this project been reviewed before?
Maybe since it's used in Graph extension but I could not find a formal report.
Working test environment
Here's a codepen
Post-deployment
The Growth Team will be responsible for this library:
Tech lead: @kostajh
Software engineers: @Tgr @Sgs
d3 modules being used:
- https://github.com/d3/d3-array - https://www.npmjs.com/package/d3-array
- https://github.com/d3/d3-interpolate - https://www.npmjs.com/package/d3-interpolate
- https://github.com/d3/d3-path - https://www.npmjs.com/package/d3-path
- https://github.com/d3/d3-scale - https://www.npmjs.com/package/d3-scale
- https://github.com/d3/d3-selection - https://www.npmjs.com/package/d3-selection
- https://github.com/d3/d3-shape - https://www.npmjs.com/package/d3-shape
- https://github.com/d3/d3-time - https://www.npmjs.com/package/d3-time
- https://github.com/d3/d3-time-format - https://www.npmjs.com/package/d3-time-format
Custom d3 build from the above packages (minified): https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/extensions/GrowthExperiments/+/refs/heads/master/modules/lib/d3/d3.min.js