WooCommerce Blocks client files relocated to complete monorepo merge

We’ve successfully completed the WooCommerce Blocks client monorepo merge as of March 5, 2025. This marks an important milestone in our ongoing efforts to improve the structure and consistency of the WooCommerce codebase.

What changed

The client files for WooCommerce Blocks have been moved from plugins/woocommerce-blocks to plugins/woocommerce/client/blocks, aligning with how we previously organized WooCommerce Admin.

This change completes the monorepo merge that began in December 2023, when we merged the PHP part of Woo Blocks into Core but left the client files in their original location.

Why we made this change

This relocation addresses a structural inconsistency in our monorepo that has existed since the initial merge. By moving the client files alongside Woo Admin, we’ve created a more logical and maintainable repository structure.

Key benefits include:

  • Better consistency across the codebase.
  • Improved repository organization.
  • Completion of the monorepo merge project.
  • Foundation for future improvements to the repo structure.

Impact for developers

The good news: there are no functional changes. We designed this update to maintain complete build parity with the previous structure:

  • Files are still built to the same location (plugins/woocommerce/assets/client/blocks).
  • All dependencies remain properly locked in.
  • All tests are passing.

The build process remains unchanged, which means end users will not notice any difference.

Rebasing considerations

The most significant impact is for developers actively working on Blocks. If you have opened a Pull Request prior to the move, you will need to rebase your PR branch before it can be merged.

Most rebasing should be straightforward because file contents haven’t changed – just their locations. The main complexity occurs if a PR adds a new file, as Git won’t recognize it as a moved file. In these cases, Git will show a conflict but will indicate the parent directory’s move.

If you encounter any issues while rebasing, please don’t hesitate to reach out for help in the WooCommerce Slack Community

Looking ahead

This merge is part of our broader strategy to improve the monorepo’s structure and sets the stage for future improvements.

We’re committed to making our codebase more organized, consistent, and developer-friendly. Thank you for your patience and cooperation as we continue to enhance the foundation of WooCommerce.

Questions or issues?

If you encounter any problems or have questions about this change, please let us know. We want to help ensure a smooth transition.


Leave a Reply

Your email address will not be published. Required fields are marked *