Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR removes Webpack-based build tooling from the repo by migrating the browser extension build to Vite and switching the cron-tasks build to Nx’s esbuild executor.
Changes:
- Replace
apps/jetstream-web-extensionWebpack build config with a multi-entry Vite build + custom Vite plugins (manifest transform, placeholder route pages, extension script bundling). - Migrate
apps/cron-tasksfrom@nx/webpack:webpackto@nx/esbuild:esbuildwith bundled CJS outputs and additional entrypoints. - Remove Webpack-related dependencies/configuration from Nx and the workspace (package deps, nx.json target defaults, config stubs).
Reviewed changes
Copilot reviewed 24 out of 52 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| yarn.lock | Updates dependency graph after removing Webpack toolchain deps. |
| webpack-server.config.js | Removes Nx Webpack config stub. |
| package.json | Drops Webpack/Nx Webpack tooling deps and related scripts. |
| nx.json | Removes caching config for @nx/webpack:webpack. |
| libs/shared/ui-router/src/lib/ui-router.ts | Adjusts extension deep-link query param to use *.html routes. |
| apps/jetstream-web-extension/webpack.config.js | Removes the extension’s Webpack build configuration. |
| apps/jetstream-web-extension/vite.plugins.ts | Adds custom Vite plugins for manifest transforms, placeholder pages, and bundling extension scripts. |
| apps/jetstream-web-extension/vite.config.ts | Configures Vite multi-entry build for extension pages and wires in custom plugins. |
| apps/jetstream-web-extension/src/utils/extension-public-path.ts | Removes Webpack __webpack_public_path__ setup. |
| apps/jetstream-web-extension/src/redirect-utils/placeholder-redirect.html | Removes static placeholder HTML template (now generated in Vite plugin). |
| apps/jetstream-web-extension/src/pages/popup/Popup.tsx | Removes Webpack public-path import. |
| apps/jetstream-web-extension/src/pages/app/App.tsx | Removes Webpack public-path import. |
| apps/jetstream-web-extension/src/environments/environment.ts | Switches env access from process.env.* to import.meta.env.*. |
| apps/jetstream-web-extension/src/environments/environment.staging.ts | Switches env access from process.env.* to import.meta.env.*. |
| apps/jetstream-web-extension/src/environments/environment.prod.ts | Switches env access from process.env.* to import.meta.env.*. |
| apps/jetstream-web-extension/public/redirect.js | Adds redirect helper used by generated placeholder pages. |
| apps/jetstream-web-extension/public/assets/js/monaco/.gitkeep | Keeps Monaco asset directory present in Vite public tree. |
| apps/jetstream-web-extension/public/assets/js/monaco/.gitignore | Ignores Monaco vs/ directory output. |
| apps/jetstream-web-extension/public/assets/images/split-grip-vertical.png | Adds/updates extension UI image asset. |
| apps/jetstream-web-extension/public/assets/images/split-grip-horizontal.png | Adds/updates extension UI image asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-sfdc-blue-48.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-sfdc-blue-32.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-sfdc-blue-24.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-sfdc-blue-16.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-sfdc-blue-128.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-pro.svg | Adds/updates icon asset (SVG). |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-pro-48.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-pro-32.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-pro-24.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-pro-16.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-pro-128.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-inverse-48.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-inverse-32.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-inverse-24.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-inverse-16.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-inverse-128.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-48.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-32.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-16.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/icons/jetstream-icon-128.png | Adds/updates icon asset. |
| apps/jetstream-web-extension/public/assets/favicon.ico | Adds/updates favicon asset. |
| apps/jetstream-web-extension/project.json | Switches build target to @nx/vite:build and updates serve approach. |
| apps/jetstream-web-extension/popup.html | Adds Vite module script entry for popup page. |
| apps/jetstream-web-extension/app.html | Adds Vite module script entry for app page. |
| apps/jetstream-web-extension/additional-settings.html | Adds Vite module script entry for additional settings page. |
| apps/jetstream-web-extension/.babelrc | Removes Babel config used by Webpack pipeline. |
| apps/cron-tasks/webpack.config.js | Removes Nx Webpack config stub. |
| apps/cron-tasks/src/main.ts | Adds placeholder main entrypoint for esbuild config. |
| apps/cron-tasks/src/environments/environment.ts | Removes environment file no longer used by build replacements. |
| apps/cron-tasks/src/environments/environment.prod.ts | Removes prod environment file no longer used by build replacements. |
| apps/cron-tasks/project.json | Migrates cron-tasks build to @nx/esbuild:esbuild and updates entrypoints. |
| .dockerignore | Removes explicit allowlist for deleted webpack-server.config.js. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
458a798 to
73c9753
Compare
Migrate web-extension to vite migrate cron job build to esbuild
73c9753 to
a7b7ecc
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Migrate web-extension to vite
migrate cron job build to esbuild