IQSS / IQSS/dataverse

Feature Request: Feature-Flagged Direct JSF Mount for SPA Tree View (with iframe Fallback)

Open
#12,179 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Type: Feature
Dominant language
Java
Stars
1.1k
Forks
564
Avg merge
2d 2h
Merged PRs (30d)
29

Description

Overview of the Feature Request
Add a Dataverse JSF integration path to mount a SPA tree-view module directly in JSF (without iframe) behind a feature flag, while keeping iframe fallback for compatibility.

Important scope boundary:

  • This issue is for the JSF mount/reuse contract and rollout path.
  • Tree-view feature implementation itself remains in the SPA workstream.

Proposed scope:

  • Define JSF container + bootstrap contract for mounting the SPA tree-view module.
  • Add feature flag to switch between direct mount and iframe fallback.
  • Define config/input and completion/event contract between JSF and SPA.
  • Keep backwards-compatible fallback path.

What kind of user is the feature intended for?
Depositor, Curator, Sysadmin

What inspired the request?
We want to implement complex UI logic once in SPA and reuse it in JSF, instead of duplicating feature logic across frontends. Tree view is the first target for this reuse pattern.

What existing behavior do you want changed?
Today, embedding patterns are mainly iframe-oriented and not a standardized direct JSF mount contract for SPA modules.

Any brand new behavior do you want to add to Dataverse?
Yes:

  • Feature-flagged direct JS mount path in JSF for tree-view module reuse.
  • Standardized integration contract for SPA module config/events.
  • iframe fallback for compatibility and rollout safety.

Any open or closed issues related to this feature request?

Are you thinking about creating a pull request for this feature?
Yes. This is planned as part of the tree-view integration track, separate from tree-view SPA implementation details.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the existing iframe-oriented embedding patterns and the related issues #6691 and dataverse-frontend#468. Define the JSF container/bootstrap, config and event contracts, feature-flag switch, and backwards-compatible iframe fallback; done means the direct mount and fallback paths are specified for the tree-view integration track.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, javascript
Domain
frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.