Build Shopify integrations in TypeScript with background flows, configurable service providers, and an embedded admin UI.
Documentation · Website · Changelog
OpenShop is in beta. APIs, generated files, and workflows may change before 1.0.
Follow Build your first app to set up PostgreSQL, create a project, install it on a Shopify development store, and run the sample integration. You will need Node.js 26, pnpm 11, PostgreSQL 17, Shopify CLI, and access to a development store.
Create an application from the published template:
pnpm dlx openshop init my-app
cd my-app
pnpm installContinue with the tutorial to configure storage and link the Shopify app before
running pnpm run shopify.
- Providers define external API methods and credential fields. OpenShop builds a configuration form for each shop and supplies configured connectors at runtime.
- Flows define background work in named steps. OpenShop queues runs, stores checkpoints, applies retry policies, and exposes execution logs.
- App configuration registers flows, providers, schedules, and HTTP features. Shopify OAuth and the embedded admin are handled by the framework.
In production, a web service accepts requests and queues work; a separate worker executes it. PostgreSQL stores installations, credentials, runs, and checkpoints. See Architecture for the model and Deploy to production for build, migration, and process setup.
| Your goal | Start here |
|---|---|
| Learn OpenShop by building something | Tutorials |
| Connect a service, extend an app, test, or deploy | How-to guides |
| Look up APIs, configuration, or CLI commands | Reference |
| Understand retries, architecture, or shop isolation | Explanation |
| Diagnose a problem | Troubleshooting |
This repository contains the framework (packages/openshop), a demo app
(apps/demo), and the documentation site (docs). See
CONTRIBUTING.md for development and checks, and
docs/README.md for documentation structure and writing guidance.
OpenShop is source-available under the Elastic License 2.0.
You may use, modify, and redistribute OpenShop, including for internal production use and client projects. You may not provide OpenShop to third parties as a hosted or managed service where users get access to a substantial set of OpenShop's features.
Read the LICENSE file for the full terms.