Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revises Markdown Pages and Reports #19226

Draft
wants to merge 14 commits into
base: dev
Choose a base branch
from

Conversation

guerler
Copy link
Contributor

@guerler guerler commented Dec 1, 2024

Very early draft, sketching out and exploring how Vega and other Visualizations can be added to our Markdown components. There is still a lot to do, particularly with regard to early preview, parameter replacement, tests, modularity, element resizing etc. The report/page editor requires a significant overhaul and there are many issues to be fixed, so no need for a review as of right now.

markdown

How to test the changes?

(Select all options that apply)

  • I've included appropriate automated tests.
  • This is a refactoring of components with existing test coverage.
  • Instructions for manual testing are as follows:
    1. [add testing steps and prerequisites here if you didn't write automated tests covering all your changes]

License

  • I agree to license these and all my past contributions to the core galaxy codebase under the MIT license.

@jmchilton
Copy link
Member

I suspect this is going in a different direction but I want to reiterate points I failed to make with workflow comments but that I think are important. We've been around for 20 years - twice as long as vega - we should assume these blobs will be in databases in 2044 IMO - we shouldn't be tied to particular JavaScript library choices and we should look at this from a language design and maintenance perspective. We should develop a syntax for the charts we want to support and have a compatibility layer.

```galaxy
bar_chart(history_dataset_id=X, columns=[1,3])
```

There should be a testing framework that rapidly demonstrates all the charts so we can visually diff things and render them on the frontend or backend with different technologies. The goal should be sustainable, maintainable set of components and not exposing every feature of vega lite.

Even if the syntax is exactly vega lite's syntax - which is totally fine and makes a lot of sense - I think we should validate it is a very strict subset we are confident could be rendered using some other technology (native D3, ggplot, plotnine, etc...).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants