The content on this site reflects the current progress of the Magento PWA project. If you have any questions, concerns, or contribution ideas, join our #pwa Slack channel.

Contributing

Thank you for your interest in contributing to the PWA Studio project! Before you start contributing, please take a moment to read through the following guidelines:

To contribute to this repository, start by forking the official repository and following the installation instructions in the Venia storefront setup topic.

Pull Request checklist

  • PR commits should contain meaningful commit messages
  • To help with reviews, your PR should only create/revise a single feature or fix a single issue.
  • If your PR fixes a bug, please provide a step-by-step description of how to reproduce the bug.
  • If your PR addresses an existing issue, please reference that issue in the title or description.

Contribution process

Magento maintains a public roadmap for this and other Magento Research repositories in each project’s issue board.

Any and all community participation in this backlog is encouraged and appreciated. Even foundational infrastructure stories are available for a generous developer to take on.

To get started, look for issues tagged with the help wanted labels. These issues are ready for community ownership.

Note: We also accept unsolicited new issues/features and pull request, but priority is given to issues in our roadmap that community developers have been kind enough to take on.

Claiming an issue on the roadmap

If you are interested in taking ownership of a roadmap feature or issue, we ask that you go through the following process. This helps us organize and forecast the progress of our projects.

Step 1: Add an issue comment

Add a comment on an issue expressing your interest in taking ownership of it. Make sure your GitHub profile includes an email address so we can contact you privately.

Step 2: Meet with a maintainer

A maintainer will contact you and ask to set up a real-time meeting to discuss the issue you are interested in owning. This meeting can be in person, video chat, audio chat, or text chat.

In general this meeting is brief but can vary with the complexity of an issue. For larger issues, we may schedule follow-up meetings.

During this meeting, we provide you with any additional materials or resources you need to work on the issue.

Step 3: Provide an estimate

We ask that you provide us an estimate of how long it will take you to complete the issue.

If you require more time to provide a time frame for completion, you are allowed to take up to five business days to think about it.

If you can’t get back to us by that time, we understand! As a community developer, you are helping us out in addition to your regular job. We will un-assign you from this issue, but please feel free to contribute to another issue.

Step 4: Work on the issue

After you provide an estimate, the issue is now “in progress”, and you officially become a member of the Magento Research organization.

If you need more time to work on the issue, please contact us as soon as possible. We may request an update on your progress, but we are willing to accommodate.

If the deadline you provided to us passes and we have not heard from you, we will wait one week before un-assigning you from the issue.

Step 5: Create a pull request

When you finish working on an issue, create a pull request with the issue number included in the title or body. This starts the (brief) code review process.

After we accept and merge your contribution, you become an official contributor! Official contributors are invited to our backlog grooming sessions and have direct influence over the product roadmap.

We hope this guide paints a clear picture of your duties and expectations in the contribution process. Thank you in advance for helping with our research projects!

Report an issue

Create a GitHub issue and put an X in the appropriate box to report an issue with the project. Provide as much detail as you can in each section to help us triage and process the issue.

Issue types

  • Bug - An error, flaw, or failure in the code
  • Feature suggestion - A missing feature you would like to see implemented in the project
  • Other - Any other type of task related to the project

Note: Please avoid creating GitHub issues asking for help on bugs in your project that are outside the scope of this project.