Skip to content

[Feature] Enable angular-osf development server as alternative to ember-osf-web development server #11224

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

Open
wants to merge 4 commits into
base: develop
Choose a base branch
from

Conversation

chiku-samugari
Copy link

Purpose

This PR introduces a configuration option, PRIMARY_WEB_APP, that lets developers select whether ember-osf-web or angular-osf is served as the primary frontend during development.

Changes

  1. Make main frontend selectable between ember-osf-web and angular-osf.

    • Added PRIMARY_WEB_APP configuration option to specify the frontend.
    • Modified routing logic and view functions to support both ember-osf-web and angular-osf frontends.
  2. Apply name conversions for framework-neutral naming.

    • USE_EXTERNAL_EMBER -> USE_EXTERNAL_WEB_APP
    • PROXY_EMBER_APPS -> PROXY_WEB_APPS
    • EXTERNAL_EMBER_APPS -> EXTERNAL_WEB_APPS
    • EXTERNAL_EMBER_SERVER_TIMEOUT -> EXTERNAL_APP_SERVER_TIMEOUT
    • EMBER_DOMAIN -> PRIMARY_WEB_APP_DOMAIN
    • stream_emberapp -> stream_web_app
    • use_ember_app -> use_primary_web_app
    • module ember_osf_web -> external_web_app

QA Notes

  • Verify that the existing Ember frontend continues to work when PRIMARY_WEB_APP = 'ember_osf_web'
  • Verify that switching to Angular frontend works correctly with PRIMARY_WEB_APP = 'angular_osf'
  • Verify that all proxy routes correctly forward requests to the selected frontend
  • Verify that renamed variables and functions maintain backward compatibility
  • Verify that all imports and references have been updated correctly

Concerns/Considerations/Questions

  • Even though .docker-compose.env is listed in .gitignore, this PR modifies it (EMBER_DOMAIN to PRIMARY_WEB_APP_DOMAIN).
  • Feature-flag for angular-osf is not implemented in this PR. Only hard switch via PRIMARY_WEB_APP.
  • In order to use angular-osf locally, angular.json must be tweaked as follows:
    • osf.architect.build.configurations.development.baseHref: "/angular-osf/assets/"
    • osf.architect.serve.configurations.development.port: 4300
    • osf.architect.serve.configurations.development.host: "0.0.0.0"

Documentation

  • Added setting description to website/settings/local-dist.py.
  • No external docs impacted.

Side Effects

None identified. The changes maintain backward compatibility with existing ember-osf-web setup.

Ticket

N/A

chiku added 4 commits July 9, 2025 15:40
- `USE_EXTERNAL_EMBER` -> `USE_EXTERNAL_WEB_APP`
- `PROXY_EMBER_APPS` -> `PROXY_WEB_APPS`
- `EXTERNAL_EMBER_APPS` -> `EXTERNAL_WEB_APPS`
- `EXTERNAL_EMBER_SERVER_TIMEOUT` -> `EXTERNAL_APP_SERVER_TIMEOUT`
- `EMBER_DOMAIN` -> `PRIMARY_WEB_APP_DOMAIN`

- `stream_emberapp` -> `stream_web_app`
- `use_ember_app` -> `use_primary_web_app`
  - Identifiers includes `use_ember_app` as part of name are also
    converted. same rule.
- directory name `ember_osf_web` -> `external_web_app`
  - affected `import` statements are fixed, too.
@chiku-samugari chiku-samugari marked this pull request as ready for review July 9, 2025 09:29
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.

1 participant