https://r.scandipwa.comThis is the recommended way of theme installation. This type of installation prohibits you to modify package source, and enables upgrades via NPM.
Make sure the package.json file is found in packages/<UNZIPPED FOLDER>, for example, packages/my-theme/package.json
Copy the name field from themes package.json file
Edit the ScandiPWA root package.json to include the package name as dependency, in versions place specify relative path to the theme’s root prefixed with file: for example, file:./packages/my-theme. In the end dependencies field in the package.json must include similar entry: "@scandiweb/my-theme": "file:./packages/my-theme"
Make sure the ScandiPWA root package.json includes "postinstall": "scandipwa-scripts link", and "postupdate": "scandipwa-scripts link" entries in the scripts field
Change the scandipwa.parentTheme field in ScandiPWA root package.json to be equal to theme’s package name, for example, @scandiweb/my-theme
Install dependencies, use one of the commands:
You can use Yarn: yarn
Or use NPM: npm i
Run your theme as usual, it should start and have a new desired appearance of your new theme
Installing via NPM
This is the recommended way of extension installation. This type of installation prohibits you to modify package source, and enables upgrades via NPM.
Copy the NPM auth token, and replace the <NPM_AUTH_TOKEN> template in .npmrc with your NPM token
Add the extensions package to your project's dependencies, use one of the commands:
You can use Yarn: yarn add <PACKAGE>
Or use NPM: npm i <PACKAGE>
Change the scandipwa.extensions field in ScandiPWA root package.json to include extensions enablement entry, for example: "@scandiweb/my-extenion": true
Run your app as usual, it should start and have a an extension functionality enabled
Installing as ZIP
This type of installation enables you to modify package source, but prevents further upgrades.
Create (or make sure it exists) packages folder inside of your ScandiPWA root
Make sure the package.json file is found in packages/<UNZIPPED FOLDER>, for example, packages/my-extension.
Copy the name field from extensions package.json file
Edit the ScandiPWA root package.json to include the package name as dependency, in versions place specify relative path to the extensions root prefixed with file: for example, file:./packages/my-extension. In the end dependencies field in the package. json must include a similar entry: "@scandiweb/my-extenion": "file:./packages/my-extension"
Make sure the ScandiPWA root package.json includes "postinstall": "scandipwa-scripts link", and "postupdate": "scandipwa-scripts link" entries in the scripts field
Change the scandipwa.extensions field in ScandiPWA root package.json to include extensions enablement entry, for example: "@scandiweb/my-extenion": true
Install dependencies, use one of the commands:
You can use Yarn: yarn
Or use NPM: npm i
Run your app as usual, it should start and have a an extension functionality enabled
Installing via Composer
This is the recommended way of extension installation. This type of installation prohibits you to modify package source, and enables upgrades via Composer.
Make sure you have an username and password generated in My Account / Composer Auth tokens section of the marketplace (if there are multiple – you can use any of the provided ones)
Run the following command from Magento 2 root folder: composer config repositories.scandipwa composer https://marketplace.scandipwa.com/media/repo
Update the Composer auth object (in auth.json file in your Magento 2 root or the COMPOSER_AUTH environment variable) with the following entry, while replacing the <USERNAME> and <PASSWORD> template with accoring values from step 1: