npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

reaction-cli

v1.5.2

Published

A command line client for creating and managing Open Commerce projects

Downloads

76

Readme

Open Commerce CLI

Note: Our new CLI is in its very early stages. If you find any issues please report them here.

Overview


The CLI is the quickest and easiest way to develop on Open Commerce. It allows you to create and work with API, Admin, and Storefront projects all via the command line.

Prerequisites


Before you can use the Open Commerce CLI, ensure you have all the base requirements for your operating system:

In addition, you need to have your system setup for SSH authentication with GitHub

Installation

Before you can use the Open Commerce CLI you need to install the command line tool:

From NPM (Suggested method)

First install the cli by running:

npm install -g reaction-cli

You can test to see if it has worked here by running:

reaction help

You should see the help text showing.

From a Cloned repo

First clone the repo locally (substitute with whatever directory name you want to use)

git clone [email protected]:reactioncommerce/cli.git <my-directory>

then cd into the directory you just created

cd <my-directory>

Then run npm install inside the CLI directory

npm install

Then install the CLI globally (this may require sudo on some systems):

npm install -g

Creating a project

You can create your Open Commerce project by running:

reaction create-project api <your-project-name>

This will create an Open Commerce project in the directory . Once this is complete, run:

cd <your-project-name> 

Then run:

npm install 

Finaly run:

reaction develop api

Note: Optionally, from within the project-directory you may issue the above command without mentioning the project type and the CLI would check your package.json for the "projectType" and pick it up from there. This expects that the project itself was built using the latest version of the CLI as explained in the above steps.

Example, instead of the above command, you may skip mentioning 'api' and just run:

reaction develop

This will start the Open Commerce GraphQL server and Mongo Server. Press Ctrl+C to stop.

  • A sample custom plugin has been installed, and you should see its output in the logs. (Your Sample Plugin)
  • To add a new plugin based on our plugin template run:
reaction create-plugin api <your-plugin-name>

Validate whether the plugin was created in the "custom-packages"

cd custom-packages
cd <your-plugin-name>
npm install 

You now need to change back up to the root:

cd ../../

now you can run:

reaction develop

This plugin will now be loaded the next time you start Open Commerce.

Congratulations!! You're ready to start developing with Open Commerce

Add the Admin/Storefront

Open Commerce includes an Admin panel for managing your system plus an example storefront implementation so you can see how you would go about building your own.

Adding the Admin

To add the admin project you can run:

reaction create-project admin <your-admin-name> 

and a your-admin-name directory will be created in the new directory.

Change to that directory by running:

 cd <your-admin-name> 

Then run:

npm install

and you can start the admin project by running:

reaction develop

For more information about developing the admin you can go to Mailchimp Open Commerce Documentation

Adding a Storefront

To add the example storefront project so you can browse your installation just run:

reaction create-project storefront <your-storefront-name>

To run the storefront navigate to the newly created storefront directory by running:

cd <your-storefront-name>

and run:

npm install

and then:

reaction develop

The storefront will be available on port https//localhost:4000

Update the plugins

To update the plugins in your project so you can run the below command:

Navigate to your project directory:

cd <your-api-directory>

and run the update command:

reaction update

To quickly update all your plugins:

reaction update --all

Your outdated plugins will be updated to the latest version.

Clone plugins

To clone all official Open Commerce plugins locally run:

reaction clone-api-plugins

If you want to manually clone a specific plugins, use the -m flag:

reaction clone-api-plugins -m

Other Commands

  • For a full list of commands run:
reaction help
  • To build a dockerfile that includes your custom code while in the directory you can run:
reaction build <api|admin|storefront>
  • If you're looking to evaluate or demo the Admin, Storefront, and API simultaneously you can run:
reaction create-project demo <you-demo-name>
cd <your-demo-name>

Check that the storefront (localhost:4000), graphQL server (localhost:3000) and admin (localhost:4080) are all running (this might take a minute or so).

Contribution

If you find any issues please reports them here.

Telemetry

This project sends back anonymous data to our analytics provider so we can understand how users are using the product. If you want to see what data is being sent you can set the environment variable: Run:

export SHOW_VERBOSE_TELEMETRY_DATA=1
reaction create-project api myserver-2

If you want to turn the telemtry data off indeffinitely you can run:

reaction telemetry off

to turn it back on run:

reaction telemetry on

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 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 <[email protected]>

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

We ask that you use your real name (please no anonymous contributions or pseudonyms). By signing your commit you are certifying that you have the right have the right to submit it under the open source license used by that particular Reaction Commerce project. You must use your real name (no pseudonyms or anonymous contributions are allowed.)

We use the Probot DCO GitHub app to check for DCO signoffs of every commit.

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

License

Copyright 2022

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.