Add ImageExport renderer based on running node.js
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Stale
- Tech stack
- fsharp, javascript, node.js
- Domain
- data-visualization
Research direction
Start by reading src/Plotly.NET.ImageExport/PuppeteerSharpRenderer.fs and compare its rendering flow with the linked jsdom approach and edge's Node.js execution model. Define the Node.js-based renderer's integration and verify that Plotly.NET JSON objects can be rendered and saved as images without a headless browser.
Written by the indexing model from the issue text.
Description
Description
As plotly.js, the underlying library that Plotly.NET is using needs an environment that can execute javascript to render images programmatically.
https://github.com/tjanczuk/edge seems to be able to run javascript code in node.js from .NET, meaning it should be possible to use plotly.js to render our json objects and save them to a file via node. This would be a big addition, because it would not need a headless browser to achieve this, just a node installation.
Pointers
- here is an answer that shows how to do this with
jsdom: https://stackoverflow.com/a/76070903/5675597 - A reference implementation for this using PuppeteerSharp can be seen here
- Dominant language
- F#
- Stars
- 860
- Forks
- 99
- Avg merge
- 22m
- Merged PRs (30d)
- 1
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from plotly/Plotly.NET
-
Difficulty 1/5 Under an hour Newbie friendliness 78/100
plotly/Plotly.NET#498 ·
-
Difficulty 3/5 1-2 days Newbie friendliness 42/100
plotly/Plotly.NET#495 · 3 comments ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
plotly/Plotly.NET#494 · 1 comment ·
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
plotly/Plotly.NET#492 ·
-
Difficulty 4/5 3-5 days Newbie friendliness 38/100
plotly/Plotly.NET#485 · 1 comment ·