Move UI in it's own general project

Created on 27 April 2022, about 2 years ago
Updated 12 October 2023, 9 months ago

Problem/Motivation

The frontend part of the project browser is independent enough from the backend that it could make sense to separate it into a JS-only project that uses rules more suited to JS projects compared to current core standards.

Benefits

  • Faster iteration with rules more suited for JS code
  • The PB project in core doesn't ship/need any new JS dev dependencies, it's only using compiled JS files
  • …

Drawbacks

  • To fix issues potentially need a release of PB and the npm package
  • Reviewing changes becomes challenging because everything is abstract
  • The backend cannot be tested without the UI and the UI cannot be tested without the backend. This has been a huge problem.
  • All of the potential version divergence issues are PITA
  • …

In situation where the d.o API changes that the frontend is in core or in a npm package doesn't change the issue that some sites just won't update so in all cases the UI will need to be functional with a potentially large range of API versions.

Proposed resolution

Proposal to discuss.

Remaining tasks

  • βœ… File an issue about this project
  • ☐ Addition/Change/Update/Fix to this project
  • ☐ Testing to ensure no regression
  • ☐ Automated unit/functional testing coverage
  • ☐ Developer Documentation support on feature change/addition
  • ☐ User Guide Documentation support on feature change/addition
  • ☐ Code review from 1 Drupal core team member
  • ☐ Full testing and approval
  • ☐ Credit contributors
  • ☐ Review with the product owner
  • ☐ Release

User interface changes

none

API changes

The project browser module would require the @drupal/project-browser npm module.

Data model changes

none

Release notes snippet

πŸ“Œ Task
Status

Closed: won't fix

Version

1.0

Component

Code

Created by

πŸ‡«πŸ‡·France nod_ Lille

Live updates comments and jobs are added and updated live.
  • JavaScript

    Affects the content, performance, or handling of Javascript.

Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

  • πŸ‡ΊπŸ‡ΈUnited States chrisfromredfin Portland, Maine

    There is a way for a developer to completely replace the route and the app served for Project Browser if they're so-motivated (they could even re-write in Vue, React, or The Next Cool Thing, if needed). Parent is closed-wontfix for the time being while we make the push to get into core.

    That said, I wouldn't mind revisiting the idea of decoupling the front-end app into its own general project someday.

Production build 0.69.0 2024