woocommerce/plugins/woocommerce
Joshua T Flowers 3fd736c72f
Update plugins installer component to TS, Fix TS bugs and Syncpack TypeScript (#34787)
2022-09-30 10:59:07 +13:00
..
.wordpress-org git mv a few folders 2021-10-19 10:35:45 +13:00
assets Add a header for the "Add store details" task in woocommerce admin (#34712) 2022-09-26 15:19:47 +03:00
bin Update pnpm command to run makepot (#34733) 2022-09-19 07:38:40 -07:00
changelog Update plugins installer component to TS, Fix TS bugs and Syncpack TypeScript (#34787) 2022-09-30 10:59:07 +13:00
client Disable product management experience in dev env (#34836) 2022-09-26 10:07:44 -03:00
i18n Liechtenstein Checkout: Hide Municipality Field with empty states array (#34189) 2022-09-02 13:20:28 +02:00
includes Move props from datastore to order object and implement $save params for DataStore (#34627) 2022-09-28 14:07:41 -03:00
lib Add a namespace prefix to the Psr/Container package (#33703) 2022-08-02 09:59:32 -07:00
packages Remove PHP 8.1 warnings and errors (#34336) 2022-08-16 10:22:53 -07:00
sample-data Suppressing warnings for malformed metadata in product template downloads #32971 #32971 2022-05-24 11:12:02 -07:00
src Honor query args when redirecting from posts to HPOS list table (#34868) 2022-09-29 10:22:42 -07:00
templates Update tracking parameters for mobile messaging (#34717) 2022-09-16 16:32:18 -07:00
tests Fix/test env setup set customer registered datetime (#34888) 2022-09-29 12:44:06 -07:00
.distignore Remove/assets (#34633) 2022-09-09 10:20:25 -07:00
.eslintignore remove zeroclipboard 2022-02-09 08:06:25 -08:00
.eslintrc.js Update CI to use wp-env for api, e2e and performance tests (#34311) 2022-08-15 11:47:53 -07:00
.gitattributes git mv a few folders 2021-10-19 10:35:45 +13:00
.gitignore Fixed Asset Output Caching (#34606) 2022-09-07 13:57:15 -07:00
.wp-env.json Fix a bug crashing wp-env 5.1.0 in CI (#34274) 2022-08-16 13:21:52 +12:00
NEXT_CHANGELOG.md Empty next changelog 2022-04-15 17:10:45 -03:00
README.md Simplify turbo commands (#34055) 2022-08-05 12:03:17 +12:00
composer.json Update to WC Blocks 8.5.1 (#34807) 2022-09-23 15:26:51 +02:00
composer.lock Update to WC Blocks 8.5.1 (#34807) 2022-09-23 15:26:51 +02:00
license.txt git mv a few folders 2021-10-19 10:35:45 +13:00
package.json Update plugins installer component to TS, Fix TS bugs and Syncpack TypeScript (#34787) 2022-09-30 10:59:07 +13:00
phpunit.xml Move phpunit.xml into plugins/woocommerce structure 2021-10-19 10:35:46 +13:00
readme.txt Add changelog and bump version (#34838) 2022-09-26 07:02:12 -07:00
tsconfig.json Converted Spaces To Tabs In JSON 2022-05-10 13:31:01 -07:00
uninstall.php Prevent fatal errors during uninstall (#34469) 2022-09-14 08:44:01 -07:00
woocommerce.php Bump WooCommerce 7.0.0 Versions (#34403) 2022-08-19 14:07:00 -07:00

README.md

WooCommerce

license Latest Stable Version WordPress.org downloads WordPress.org rating Build Status codecov

This is the WooCommerce Core plugin. Here you can browse the source and keep track of development. We recommend all developers to follow the WooCommerce development blog to stay up to date about everything happening in the project. You can also follow @DevelopWC on Twitter for the latest development updates.

If you are not a developer, please use the WooCommerce plugin page on WordPress.org.

Getting Started

Please make sure you follow the repository's getting started guide first!

# Make sure that WooCommerce Core and all of its dependencies are built
pnpm run build --filter=woocommerce
# Make sure you're in the WooCommerce Core directory
cd plugins/woocommerce
# Start the development environment
pnpm -- wp-env start

You should now be able to visit http://localhost:8888/ and access WooCommerce environment.

Building Components

There are two major client-side components included in WooCommerce Core that can be built, linted, and tested independently. We've organized these components in this way to take advantage of caching to prevent unnecessarily performing expensive rebuilds when only working in one of them.

plugins/woocommerce/client/legacy

This directory contains the CSS and jQuery code for WooCommerce.

# Build the assets.
pnpm run build --filter=woocommerce/client/legacy
# Lint the assets.
pnpm run lint --filter=woocommerce/client/legacy

plugins/woocommerce-admin

This directory contains the React-based admin interface.

# Build the React-based admin client.
pnpm run build --filter=woocommerce/client/admin
# Lint the React-based admin client.
pnpm run lint --filter=woocommerce/client/admin
# Test the React-based admin client.
pnpm run test --filter=woocommerce/client/admin

Helper Scripts

Here is a collection of scripts that can help when developing the React-based admin interface.

# Create a develoment build of the React-based admin client.
pnpm dev --filter=woocommerce/client/admin
# Create and watch a development build of the React-based admin client.
pnpm start --filter=woocommerce/client/admin
# Watch the tests of the React-based admin client.
pnpm test:watch --filter=woocommerce/client/admin
# Run a type check over the React-based admin client's TypeScript files.
pnpm ts:check --filter=woocommerce/client/admin

Documentation

Reporting Security Issues

To disclose a security issue to our team, please submit a report via HackerOne here.