gosling.js icon indicating copy to clipboard operation
gosling.js copied to clipboard

Minimize HiGlass dependencies

Open sehilyi opened this issue 1 year ago • 0 comments

Gosling.js depends on HiGlass, but we use only small parts of HiGlass. For example, we do not use many UI components implemented in HiGlass by setting editable false in HiGlass' viewConfig (https://docs.higlass.io/view_config.html#viewconf-structure). This HiGlass dependency limits Gosling.js' flexibility and customizability.

For example, we are forcing users to use a certain version of React, consistent with the version in HiGlass (v17). If we remove the React dependency, we can enable Gosling.js users to use other libraries, such as Vue, Angular, pure JS, etc. The arrangement of views and tracks is also restricted by the use of react-grid-layout (https://github.com/react-grid-layout/react-grid-layout).

Toward this, we need to publish a smaller package of HiGlass that removes React. We can make HiGlass a monorepo for this.

Related Issues & PRs

  • https://github.com/higlass/higlass/issues/1146
  • https://github.com/higlass/higlass/pull/1147
  • https://github.com/higlass/higlass/pull/1148

sehilyi avatar Mar 27 '23 14:03 sehilyi