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

Jupyter UI Components Proposal #89

Closed
wants to merge 4 commits into from

Conversation

echarles
Copy link
Member

@echarles echarles commented Mar 3, 2022

Pre-proposal issue: #88

Summary

This JEP proposes the adoption of well defined UI Components across Jupyter projects needed to build user interfaces. While being primarily focussed on Web Components and React.js, the creation of components based on other technologies like Vue.js and Svelte will be possible.

The deliverable will be the creation of a ui-components repository providing accessible and themed widgets fully compatible with React.js, without blocking usage by other popular frontend technologies.

The components will target basic visual functions like buttons, drop-down... and will not deliver higher-level components like a usable Cell, or a collection of cells showing a basic Notebook connected to a running Kernel. Such components are for example available in the Jupyter React and would demand further discussion around global state, reactivity, connection to the services hosted on a server...

On top of those components, extended functionalities on reactivity and collaboration are also discussed here. But they are out-of-scope for the deliverable. However, it makes sense to discuss those last aspects in this document in relation to Jupyter Widgets and the current JupyterLab real time collaboration features.

The fundamental components are built on the FAST framework that follow WCAG 2.1, are W3C spec-compliant and use the W3C interaction models when available.

We propose to move the current https://github.com/jupyterlab-contrib/jupyter-ui-toolkit repository to a Jupyter top-level repository. The home of that repository and the npm.js package naming still needs to be defined. That repository will be advertised as the default way to build user interfaces that conform to the Jupyter guidelines.

Proposed Team

Review @fcollonval @jtpio @isabela-pf @tonyfast @gabalafou @Zsailer @minrk

Sheperd @echarles

Anyone interested in this area welcome to join the review team.

@echarles echarles closed this Jun 27, 2023
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

Successfully merging this pull request may close these issues.

2 participants