Skip to content
Reaction is an API-first, headless commerce platform built using Node.js, React, GraphQL. Deployed via Docker and Kubernetes.
JavaScript CSS HTML Other
Branch: master
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci chore(ci): Work more robustly on forks Jul 30, 2019
.github (refactor): how to get reaction version Jul 15, 2019
.meteor feat: de-Meteorize SMTP emailing Apr 9, 2019
.reaction chore: use npm command rather than meteor npm Jul 16, 2019
bin Fix review comments - Formatting with shfmt Apr 29, 2019
client temp: remove temp updates to force CI run Jul 25, 2019
custom Ignore all files in custom plugins directory (#1172) Jul 20, 2016
imports fix: prevent product publish error when variants are not visible Aug 7, 2019
lib Merge branch 'develop' of into … Jul 26, 2019
private Merge branch 'develop' into fix-pete-email-link-to-order-page Jul 1, 2019
public docs: update README and add Catalyst screenshot Jul 3, 2019
server Release 1.14.0 merge issues Jul 13, 2018
tests Merge branch 'develop' of into … Jul 26, 2019
.dockerignore fix: include submodule bare repos in docker build context Apr 12, 2019
.editorconfig Release 1.3.0 (#2417) Jun 22, 2017
.env.example Refactor #5025: Add env. vars. for graphql playground and introspection Mar 19, 2019
.eslintignore chore: ignore plugin node_modules for eslint Apr 9, 2019
.gitignore (feat) git ignore Mar 12, 2019
.gitmodules - core/server/products.js moved to reaction-catalog package; Jan 29, 2016
.hadolint.yaml Update hadolint rule affecting meteor npm install Mar 9, 2018
.jsbeautifyrc add .eslintrc Sep 27, 2015
.nvmrc chore: add .nvmrc configuration file Oct 16, 2018
.snyk remove snyk ignore Jul 17, 2019 docs: clarify statement about meteor methods Aug 2, 2019 Markdown cleanup Sep 26, 2017 docs: add link to Contributing Guide in docs Feb 9, 2018
Dockerfile chore: updated Dockerfile to change .meteor/ permissions to the node … Jul 23, 2019
Dockerfile-devserver Update Dockerfile-devserver Jun 26, 2018 Markdown cleanup Sep 26, 2017 docs(readme): banish Operator UI from readme Aug 1, 2019
babel.config.js chore: add more comments around 2 babel configs Oct 25, 2018
docker-compose.yml chore: updated Dockerfile to change .meteor/ permissions to the node … Jul 23, 2019
package-lock.json chore: bump version to 2.1.0 Aug 1, 2019
package.json chore: bump version to 2.1.0 Aug 1, 2019
propel-feat.yaml use correct docker image for nginx Nov 27, 2018
propel.yaml move Certificate ARN from yaml to ENV vars Nov 13, 2018

Reaction Commerce

Circle CI Gitter Open Source Helpers

Reaction is an API-first, headless commerce platform built using Node.js, React, and GraphQL. It plays nicely with npm, Docker and Kubernetes.

Reaction v2.0.0 is built as a truly headless commerce platform that decouples the Reaction backend services from the frontend. We’ve decoupled the storefront application from the API. Reaction platform consists of this reaction project - which is now primarily our GraphQL API (and for the time being Reaction Admin and our identity provider) - alongside our new-to-2.0 Example Storefront, which connects with the Reaction application via GraphQL API to provide a customer-facing storefront.

Reaction Admin


Reaction comes with a robust set of core commerce capabilities right out of the box. And since anything in our codebase can be extended, overwritten, or installed as a package, you may also customize anything on our platform.

Check out the full list of Reaction features and release history for more info.

Getting started

Follow the documentation to install Reaction with Reaction Platform for all supported operating systems.

Get involved

Tutorials, docs & developer tools

Get help & contact the team


⭐️ If you like what you see, star us on GitHub.

Find a bug, a typo, or something that’s not documented well? We’d love for you to open an issue telling us what we can improve!

Want to request a feature? Use our Reaction Feature Requests repository to file a request.

We love your pull requests! Check our our Good First Issue and Help Wanted tags for good issues to tackle.

Pull Request guidelines

Pull requests should pass all automated tests, style, and security checks.

Your code should pass all acceptance tests and unit tests. Run docker-compose run --rm reaction reaction test to run the test suites locally. If you're adding functionality to Reaction, you should add tests for the added functionality

We require that all code contributed to Reaction follows Reaction's ESLint rules. You can run docker-compose run --rm reaction npm run lint to run ESLint against your code locally.

Please follow the Reaction Code Style Guide. Check out our guides to JSDoc, Git, error handling, logging, and React.

We also request that you follow the our pull request template

Get more details in our Contributing Guide.

Developer Certificate of Origin

We use the Developer Certificate of Origin (DCO) in lieu of a Contributor License Agreement for all contributions to Reaction Commerce open source projects. We request that contributors agree to the terms of the DCO and indicate that agreement by signing-off all commits made to Reaction Commerce projects by adding a line with your name and email address to every Git commit message contributed:

Signed-off-by: Jane Doe <>

You can sign-off your commit automatically with Git by using git commit -s if you have your and set as part of your Git configuration.

We ask that you use your real full name (please no anonymous contributions or pseudonyms) and a real email address. By signing-off your commit you are certifying that you have the right to submit it under the GNU GPLv3 Licensed.

We use the Probot DCO GitHub app to check for DCO sign-offs of every commit.

If you forget to sign-off your commits, the DCO bot will remind you and give you detailed instructions for how to amend your commits to add a signature.


Reaction is GNU GPLv3 Licensed

You can’t perform that action at this time.