đź› Development tools to build, optimize and deploy Progressive Web Applications for Magento 2.
Branch: release/2.0
Clone or download
Latest commit bbb445d Feb 19, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Changed Venia WebpackAssetsManifest load entry points to from client … Feb 15, 2019
.github Update PULL_REQUEST_TEMPLATE.md Feb 6, 2019
packages v2.0.0-rc.20 Feb 19, 2019
pwa-devdocs docs: Remove newline from image filenames (#876) Feb 8, 2019
scripts Yarn & Babel 7 (#753) Jan 25, 2019
.editorconfig Add UPWARD specification, guide, tests, reference implementation (#248) Oct 4, 2018
.eslintignore feat(devex): Refactor Venia to be portable and importable (#788) Jan 29, 2019
.eslintrc.js fix(ci): Fix false CI failures from forked PRs (#230) Aug 16, 2018
.gitattributes fix: Replate npm-merge-driver with .gitattributes Oct 5, 2018
.gitignore fix(ux): Add UI for unhandled errors (#871) Feb 15, 2019
.npmrc chore: Add package.json integrity tools (#737) Jan 10, 2019
.prettierignore fix(test): Transpile __stories__ (#885) Feb 13, 2019
.yarnrc feat(devex): Refactor Venia to be portable and importable (#788) Jan 29, 2019
LICENSE.txt Doing some final touches to get the monorepo ready for public consump… Jun 13, 2018
LICENSE_AFL.txt Doing some final touches to get the monorepo ready for public consump… Jun 13, 2018
README.md Fix bad link in readme (#787) Jan 25, 2019
babel.config.js fix(test): Transpile __stories__ (#885) Feb 13, 2019
browserslist.js Yarn & Babel 7 (#753) Jan 25, 2019
dangerfile.js Move devdocs to package root, simplify scripts (#397) Oct 23, 2018
jest.config.js feat(devex): Refactor Venia to be portable and importable (#788) Jan 29, 2019
lerna.json v2.0.0-rc.20 Feb 19, 2019
now.json chore: add custom domain config for veniapwa.com Jan 30, 2019
package.json Make dependencies which require native extensions optional (#864) Feb 14, 2019
prettier.config.js Setup Jest multi-project runner for monorepo, and hoist common devDep… Jun 13, 2018
yarn.lock Make dependencies which require native extensions optional (#864) Feb 14, 2019

README.md

PWA Studio

CircleCI Coverage Status Magento PWA Studio is a collection of tools that lets developers build complex Progressive Web Applications on top of Magento 2 stores.

Documentation

PWA Studio documentation site

Community Contributors

The PWA Studio project welcomes all codebase and documentation contributions. We would like to recognize the following community members for their efforts on improving the PWA Studio project:

mage2pratik-image vdiachenko-image jissereitsma-image rossmc-image
mage2pratik vdiachenko jissereitsma rossmc
bobmotor-image neeta-wagento-image mtbottens-image
bobmotor gavin2point0 neeta-wagento mtbottens
Jakhotiya-image JStein92-image bgkavinga-image philwinkle-image
Jakhotiya JStein92 bgkavinga philwinkle
bobbyshaw-image matthewhaworth-image shakyShane-image Igloczek-image
bobbyshaw matthewhaworth shakyShane Igloczek
mhhansen-image rowan-m-image artKozinets-image camdixon-image
mhhansen rowan-m artKozinets camdixon

For more information about contributing to this repository, see the Contribution guide.

About this repository

To facilitate local development, testing, and versioning, PWA Studio is structured as a monorepo using Yarn Workspaces. Packages in this repository are independently published to NPM; rather than installing pwa-studio as a dependency of your project, you should install just the individual packages your project needs.

Workspaces

This repository includes the following packages as workspaces:

Other packages

This repository also includes unpublished modules that are not managed by Yarn Workspaces. They are not configured as workspaces, so their dependencies are not hoisted and must be installed separately.

Quick setup

See the Venia storefront setup topic for instructions on installing this project's dependencies and running the Venia storefront on top of an existing Magento backend.

Troubleshooting

See our Troubleshooting guide if you run into any problems.

If you have an issue that cannot be resolved, please create an issue.

Tips

  • Don't run npm install! Since this project has been configured with Yarn Workspaces, run yarn install to properly install, hoist, and cross-link dependencies.
  • Don't check in package-lock.json. There is only one lockfile, yarn.lock, and it's in the root directory.
  • To add a dependency, use workspace commands (e.g., yarn workspace @magento/venia-concept add my-module). This will associate the dependency with the right package.
  • Before pushing a commit, yarn run prettier and yarn run lint to format and inspect the source code. (There is also a git hook that will do this automatically.)