reaction README

The project's README from github.com/reactioncommerce/reaction. As one markdown file: README.md.

Mailchimp Open Commerce (formerly Reaction Commerce)

Open Commerce Website | Twitter | Documentation | Discord | Discussions

Mailchimp Open Commerce is an API-first, headless commerce platform built using Node.js, MongoDB, and GraphQL. It plays nicely with npm, Docker and Kubernetes.

MOC Admin

Features

FastReturns data in split seconds, and faster queries mean faster web pages
ProvenOpen Commerce fuels sites doing 10's of thousands of orders per day with 100's of thousands of products
ComposableA flexible plugin system allows you to pick and choose which integrations work best for you
Multi-tenantHost multiple shops in the same installation
ScalableStart out with a single server and scale up to hundreds
Flexible ProductsAllows Products, with options and variants to fit a wide variety of needs
InventoryTrack inventory, allow or disallow backorders and more
ShippingIntegrate with a shipping rate provider or build your own custom table
TaxesIntegrate with a tax rate provider or build your own custom tax table
FulfillmentFlexible fulfillment system allows you create your own fulfillment methods
Order TrackingView and manage your orders in the included admin system
EmailsCustomizable templates for Order confirmations and more
OpenFully open source. Never be locked in again

Getting started

To start working with your own project built on Mailchimp Open Commerce you can start by using our new CLI. 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.

What you need

Install the CLI

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

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, navigate to the project directory:

cd <your-project-name> 

Install the project dependencies:

npm install 

Finally, start the server in development mode:

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 use:

reaction develop

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

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

See the Complete CLI instructions for how to create your local storefront and admin.

Go to the complete installation instructions to see how to set up your store

API development

If you are working on core plugins (not developing plugins for your own installation) you should follow these instructions

What you need

Install PNPM

npm i -g [email protected]

Clone and Start the source

git clone https://github.com/reactioncommerce/reaction.git
cd reaction
pnpm install
cp apps/reaction/.env.example apps/reaction/.env

Start dev-server with mongo on local:

## you must change MONGO_URL in the .env to mongodb://localhost:27017/reaction before start
pnpm run start:dev

Start dev-server with mongodb on docker

docker-compose up -d
pnpm run start:dev

Development Flow

  1. Make some changes in one or more packages.
  2. Add a changeset in that same PR.
  3. Repeat the process of making changes and adding changesets.
  4. Create PR

How to release

  1. Run release action to create Version PR. This PR will remove all changeset files, bump up packages versions, update CHANGELOG files.
  2. Merge Version PR into trunk, CircleCI will publish all the packages into npm.

Prerelease flows

  1. All PRs will be merged into prerelease branch before triggering PRERELEASE action.
  2. Before merging PRs into prerelease branch, please make sure that all the changesets are added.
  3. Manually trigger PRERELEASE action to create Version Packages (next) PR. After merged, the changeset/action will bump up packages versions as {next-version}-next.{number}, update CHANGELOG files.
  4. Merge Version Packages (next) PR into prerelease branch, action will publish all the packages into npm.

Get involved

Contribute

:star: 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! This project uses commitlint, please use their commit message format.

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

License

Reaction is GNU GPLv3 Licensed

reaction (reactioncommerce/reaction)

Searching Database…

12.4K ·GitHub
这是什么?Mailchimp Open Commerce(原名 Reaction Commerce)是一个开源、API 优先的无头电商平台,基于 Node.js、MongoDB 和 GraphQL 构建,用于搭建网上商店。
这是托管式的建站服务,还是需要我自己部署运行的东西?需要你自己部署。GraphQL 核心就是后端,Admin(管理后台)和 Storefront(店铺前台)是两个独立的项目,你用它的 CLI 创建,再通过 Docker 和 Kubernetes 部署。
我在本地怎么把它跑起来?先用 nvm 安装 Node,然后用 Open Commerce CLI 创建一个 API 项目,安装依赖并以开发模式启动——这会启动 GraphQL 服务器和一个本地 Mongo 服务器。
我需要提前安装哪些东西?Node.js(推荐通过 nvm 安装 14.18.1 或更新版本;仓库本身要求 node >=18.10.0 和 npm >=7)。如果要开发核心包,还需要 pnpm、Docker 和 Docker Compose。
这个项目还在活跃开发吗?不在了——GitHub 上的描述写着项目已停止维护,所以别指望再有更新,把文档里的流程当作某个时间点的快照来看就好。
我可以商用吗?许可证有什么要求?它基于 GNU GPLv3 免费开源:你可以使用、学习和修改它,但如果分发衍生作品,就需要遵守 copyleft(版权同归)义务。
用它能撑起多大规模的商店?README 声称查询速度很快,并表示已有网站用它实现每天数万笔订单、数十万种商品的规模,部署可以从单台服务器扩展到几百台。
它开箱自带哪些商店功能?带选项和变体的商品、支持缺货预订规则的库存管理、物流和税务集成(或你自己的自定义费率表)、自定义配送方式、内置管理系统里的订单跟踪,以及可自定义的订单确认邮件模板。它还支持多租户:一套安装可以承载多家商店。
我该怎么对它做定制?通过它的插件系统——README 说它是可组合的,让你自由选择要用哪些集成。CLI 可以根据模板生成一个新插件放到 custom-packages 目录里,下次启动时就会自动加载。
它为什么叫 Mailchimp Open Commerce?这个平台原名 Reaction Commerce,后来被 Mailchimp 收编更名;不过仓库名和话题标签里还保留着 Reaction 这个旧名字。
Size
110 MB
Stars
12.4K
Age
13y
Commits · 90 Days