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

Cytoscape.js extension template using ESM #13

Open
maxkfranz opened this issue May 17, 2023 · 0 comments
Open

Cytoscape.js extension template using ESM #13

maxkfranz opened this issue May 17, 2023 · 0 comments

Comments

@maxkfranz
Copy link
Member

Background

Cytoscape.js is a library used to visualise and analyse networks in the browser or in Node.js.

Problems to solve:

  • A lot of JS projects now, and any recent projects, use ESM (either natively in the browser or with a bundler). The core Cytoscape.js library supports ESM. The extensions do not.
  • Someone using ESM would have to do complicated configurations to make the extensions work with a bundler.
  • Someone using ESM directly in the browser would have to use workarounds in their own code to make extensions work. This would not be straightforward, especially for novices.
  • It’s difficult for someone to contribute an extension, unless they’re fairly well skilled technically.

Technical background:

  • ESM is now the module standard for JS.
  • The existing extensions largely use Webpack to build UMD (CJS, AMD, globals).
  • The main library uses Rollup to build ESM and UMD.

Goal

Skills

Essential skills: JS, attention to detail, testing
Nice to have skills: Experience using Cytoscape.js

Public Repository

https://js.cytoscape.org/

Ref: nrnb/GoogleSummerOfCode#223

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

No branches or pull requests

1 participant