## Current Behavior When building applications that depend on workspace libraries for deployment (particularly in containerized environments like Docker), developers must manually handle copying workspace dependencies and updating package.json references. This creates friction when trying to deploy applications that consume workspace libraries, as the build output doesn't contain the necessary workspace dependencies and the package.json still references them with `workspace:` protocol which doesn't work outside the workspace context. ## Expected Behavior With the new `@nx/js:copy-workspace-modules` executor, developers can automatically prepare their built applications for deployment by: 1. **Automatically copying workspace dependencies**: The executor scans the application's package.json for workspace dependencies (those with `workspace:` or `file:` version specifiers) and copies the source code of these dependencies into a `workspace_modules` directory within the build output --------- Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
62 KiB
62 KiB
-
Nx
- Getting Started
- Features
- Core Guides
- Installation
- Tasks & Caching
- Configure Inputs for Task Caching
- Configure Outputs for Task Caching
- Define a Task Pipeline
- Use the Terminal UI
- Run Custom Commands
- Pass Args to Commands
- Run Tasks in Parallel
- Run Root-Level NPM Scripts with Nx
- Workspace Watching
- Reduce Repetitive Configuration
- Change Cache Location
- Skip Task Caching
- Migrate to Inferred Tasks (Project Crystal)
- Self-Host the Remote Cache
- Adopting Nx
- Nx Release
- Get Started with Nx Release
- Release Projects Independently
- Updating Version References in Manifest Files (e.g. package.json)
- Automatically Version with Conventional Commits
- Customize Conventional Commit Types
- File Based Versioning (Version Plans)
- Configure Custom Registries
- Publish in CI/CD
- Automate GitHub Releases
- Automate GitLab Releases
- Publish Rust Crates
- Update Your Local Registry Setup to use Nx Release
- Configure Changelog Format
- Build Before Versioning
- Configuring Version Prefix for Dependency Versions
- Nx Console
- Enforce Module Boundaries
- Tips and tricks
- Convert from a Standalone Repository to a Monorepo
- Keep Nx Versions in Sync
- Define Environment Variables
- Configuring Browser Support
- Include Assets in Build
- Include All package.json Files as Projects
- Identify Dependencies Between Folders
- Disable Graph Links Created from Analyzing Source Files
- Altering Migration Process
- Using Yarn PnP
- Core Concepts
- Technologies
- TypeScript
- Angular
- Introduction
- Migration
- Guides
- Use Environment Variables in Angular
- Using Tailwind CSS with Angular projects
- Setup Module Federation with SSR for Angular
- Advanced Micro Frontends with Angular using Dynamic Federation
- Setup incremental builds for Angular applications
- Nx and the Angular CLI
- Nx Devkit and Angular Devkit
- Angular and Nx Version Matrix
- API
- executors
- generators
- add-linting
- application
- component
- component-story
- component-test
- convert-to-application-executor
- convert-to-rspack
- directive
- federate-module
- init
- library
- library-secondary-entry-point
- remote
- move
- convert-to-with-mf
- host
- ng-add
- ngrx
- ngrx-feature-store
- ngrx-root-store
- pipe
- scam-to-standalone
- scam
- scam-directive
- scam-pipe
- setup-mf
- setup-ssr
- setup-tailwind
- stories
- storybook-configuration
- cypress-component-configuration
- web-worker
- migrations
- Angular Rspack
- Angular Rsbuild
- React
- Vue
- Node.js
- Java
- Module Federation
- ESLint
- Build Tools
- Test Tools
- Cypress
- Jest
- Playwright
- Storybook
- Introduction
- Guides
- Storybook best practices for making the most out of Nx
- Storybook 9
- Set up Storybook for React Projects
- Set up Storybook for Angular Projects
- Set up Storybook for Vue Projects
- Configuring Storybook on Nx
- One main Storybook instance for all projects
- One Storybook instance per scope
- One main Storybook instance using Storybook Composition
- How to configure Webpack and Vite for Storybook
- Setting up Storybook Interaction Tests with Nx
- Upgrading Storybook using the Storybook CLI
- Setting up Storybook Composition with Nx
- Angular: Set up Compodoc for Storybook on Nx
- Angular: Configuring styles and preprocessor options
- API
- Detox
- Enterprise
- Showcase
- Reference
- Troubleshooting
- Deprecated
- affected:graph
- print-affected
- workspace.json
- As Provided vs. Derived
- Workspace Generators
- Legacy Cache
- Custom Tasks Runner
- Workspace Executors
- runtimeCacheInputs
- cacheableOperations
- npmScope
- globalImplicitDependencies
- Angular Schematics and Builders
- v1 Nx Plugin API
- Rescope Packages from @nrwl to @nx
- Integrated Repos vs. Package-Based Repos vs. Standalone Apps
- See Also
-
Extending-nx
- Intro
- Tutorials
- Guides
- Write a Simple Generator
- Compose Generators
- Provide Options for Generators
- Create Files
- Modify Files
- Create a Sync Generator
- Write a Migration
- Write a Simple Executor
- Compose Executors
- Create a Preset
- Create an Install Package
- Infer Tasks or Projects
- Publish a Plugin
- Hook into the Task Running Lifecycle
- API
-
Ci