Skip to content

refactor: remove webpack from codebase#1649

Open
paustint wants to merge 1 commit intomainfrom
chore/replace-webpack
Open

refactor: remove webpack from codebase#1649
paustint wants to merge 1 commit intomainfrom
chore/replace-webpack

Conversation

@paustint
Copy link
Copy Markdown
Contributor

@paustint paustint commented Apr 8, 2026

Migrate web-extension to vite

migrate cron job build to esbuild

Copilot AI review requested due to automatic review settings April 8, 2026 04:28
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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-extension Webpack build config with a multi-entry Vite build + custom Vite plugins (manifest transform, placeholder route pages, extension script bundling).
  • Migrate apps/cron-tasks from @nx/webpack:webpack to @nx/esbuild:esbuild with 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.

@paustint paustint force-pushed the chore/replace-webpack branch 2 times, most recently from 458a798 to 73c9753 Compare April 10, 2026 15:54
Migrate web-extension to vite

migrate cron job build to esbuild
@paustint paustint force-pushed the chore/replace-webpack branch from 73c9753 to a7b7ecc Compare April 10, 2026 15:57
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