saleor-setup

Set up a Saleor development environment — saleor-platform Docker Compose, CLI, PostgreSQL/Redis prerequisites, manage.py commands, environment variables, project structure. Use when starting a new Saleor project.

17 stars

Best use case

saleor-setup is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Set up a Saleor development environment — saleor-platform Docker Compose, CLI, PostgreSQL/Redis prerequisites, manage.py commands, environment variables, project structure. Use when starting a new Saleor project.

Teams using saleor-setup should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/saleor-setup/SKILL.md --create-dirs "https://raw.githubusercontent.com/OrcaQubits/agentic-commerce-skills-plugins/main/dist/antigravity/saleor-commerce/.agent/skills/saleor-setup/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/saleor-setup/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How saleor-setup Compares

Feature / Agentsaleor-setupStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Set up a Saleor development environment — saleor-platform Docker Compose, CLI, PostgreSQL/Redis prerequisites, manage.py commands, environment variables, project structure. Use when starting a new Saleor project.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Saleor Development Setup

## Before writing code

**Fetch live docs**:
1. Fetch `https://docs.saleor.io/docs/developer/getting-started/architecture` for architecture overview
2. Web-search `site:docs.saleor.io saleor-platform docker compose setup` for Docker-based quickstart
3. Web-search `site:docs.saleor.io saleor CLI installation` for CLI tooling and commands
4. Web-search `site:docs.saleor.io environment variables configuration` for .env reference
5. Web-search `site:github.com saleor/saleor-platform docker-compose` for latest Compose file

## Prerequisites

### Required Software

| Software | Minimum Version | Purpose |
|----------|----------------|---------|
| Python | 3.12+ | Saleor core runtime |
| PostgreSQL | 14+ | Primary database |
| Redis | 6+ | Celery broker, caching |
| Node.js | 18+ | Dashboard and storefront apps |
| Docker & Docker Compose | latest | Recommended local environment |
| Git | any | Version control |

### PostgreSQL Setup (Without Docker)

- Create a dedicated database: `CREATE DATABASE saleor;`
- Create a user with full privileges on that database
- Connection string format: `postgres://user:password@localhost:5432/saleor`

### Redis Setup

- Default connection: `redis://localhost:6379`
- Required for Celery task queue and caching layer
- Saleor does not fall back to an in-memory broker -- Redis is mandatory

## Docker Compose Quickstart (saleor-platform)

The `saleor-platform` repository bundles all Saleor services into a single Compose stack:

| Service | Container | Port |
|---------|-----------|------|
| Saleor Core (API) | `saleor-api` | 8000 |
| Saleor Dashboard | `saleor-dashboard` | 9000 |
| Saleor Storefront | `saleor-storefront` | 3000 |
| PostgreSQL | `saleor-db` | 5432 |
| Redis | `saleor-redis` | 6379 |
| Celery Worker | `saleor-worker` | -- |
| Jaeger (tracing) | `jaeger` | 16686 |
| Mailpit (email) | `mailpit` | 8025 |

Clone the platform repository and start all services with `docker compose up`.

## Saleor CLI

| Command | Purpose |
|---------|---------|
| `saleor login` | Authenticate with Saleor Cloud |
| `saleor env list` | List available environments |
| `saleor env create` | Create a new Cloud environment |
| `saleor tunnel` | Expose local app to Saleor for webhook delivery |
| `saleor app create` | Scaffold a new Saleor App |
| `saleor app tunnel` | Tunnel local app for development |
| `saleor storefront create` | Scaffold a storefront project |

Install via `npm i -g @saleor/cli` -- fetch live docs for current CLI version.

## Project Directory Structure (Saleor Core)

| Directory | Purpose |
|-----------|---------|
| `saleor/graphql/` | GraphQL schema, types, resolvers, mutations |
| `saleor/product/` | Product, category, collection models |
| `saleor/order/` | Order, fulfillment, draft order models |
| `saleor/checkout/` | Checkout models and calculations |
| `saleor/payment/` | Payment gateway interfaces |
| `saleor/warehouse/` | Stock, warehouse, allocation models |
| `saleor/plugins/` | Legacy plugin system (deprecated in favor of Apps) |
| `saleor/webhook/` | Webhook dispatch and event handling |
| `saleor/core/` | Shared utilities, permissions, base models |
| Root | `manage.py`, `requirements.txt`, `setup.cfg`, `.env` |

## Environment Variables

| Variable | Purpose |
|----------|---------|
| `DATABASE_URL` | PostgreSQL connection string |
| `REDIS_URL` | Redis connection for Celery and cache |
| `SECRET_KEY` | Django secret key |
| `ALLOWED_HOSTS` | Comma-separated allowed hostnames |
| `DEFAULT_FROM_EMAIL` | Sender email address |
| `EMAIL_URL` | SMTP connection string |
| `DASHBOARD_URL` | Dashboard URL for CORS and redirects |
| `ALLOWED_CLIENT_HOSTS` | Storefront hosts for CORS |
| `ENABLE_DEBUG_TOOLBAR` | Enable Django Debug Toolbar |
| `JAEGER_AGENT_HOST` | OpenTelemetry tracing endpoint |

Never hardcode secrets -- always use `.env` files excluded from version control.

## manage.py Commands

| Command | Purpose |
|---------|---------|
| `python manage.py migrate` | Apply database migrations |
| `python manage.py createsuperuser` | Create admin staff account |
| `python manage.py populatedb` | Seed sample data |
| `python manage.py collectstatic` | Collect static files for production |
| `python manage.py create_thumbnails` | Generate product image thumbnails |

## Celery Worker

Saleor uses Celery for asynchronous tasks (email sending, webhook dispatch, thumbnail generation):

| Mode | Command |
|------|---------|
| Development | `celery -A saleor worker --loglevel=info` |
| Production | Use a process manager (systemd, supervisord) |
| Beat scheduler | `celery -A saleor beat` for periodic tasks |

## Common Issues

| Issue | Resolution |
|-------|-----------|
| Database connection refused | Verify PostgreSQL is running and `DATABASE_URL` is correct |
| Celery tasks not executing | Ensure Redis is running and `REDIS_URL` is correct |
| CORS errors from Dashboard | Check `DASHBOARD_URL` matches the actual Dashboard origin |
| CORS errors from Storefront | Check `ALLOWED_CLIENT_HOSTS` includes the storefront origin |
| Static files 404 | Run `collectstatic` or check `STATIC_URL` config |
| Docker Compose port conflict | Ensure ports 8000, 9000, 5432, 6379 are free |

## Best Practices

- Use `saleor-platform` Docker Compose for local development -- avoid manual dependency setup
- Always run `python manage.py migrate` after pulling changes with new migrations
- Keep `.env` in `.gitignore` and provide `.env.example` for team members
- Use `populatedb` to seed sample data for development and testing
- Run Celery worker alongside the API server -- async tasks will silently fail without it
- Pin dependency versions in `requirements.txt` to avoid unexpected breakage
- Use `saleor tunnel` or `saleor app tunnel` when developing Apps that receive webhooks

Fetch the Saleor setup documentation for exact Docker Compose configuration, CLI flags, and latest environment variable reference before implementing.

Related Skills

woo-setup

17
from OrcaQubits/agentic-commerce-skills-plugins

Install WooCommerce, configure the development stack, and set up a local dev environment with WP-CLI, Docker, or wp-env. Use when setting up a new WooCommerce project or development environment.

webmcp-setup

17
from OrcaQubits/agentic-commerce-skills-plugins

Set up a WebMCP project — enable Chrome flags, install MCP-B polyfill, scaffold tool registration, and configure development environment. Use when starting a new WebMCP-enabled website from scratch.

ucp-setup

17
from OrcaQubits/agentic-commerce-skills-plugins

Set up a UCP project — scaffold a merchant server or platform client with discovery profile, SDK installation, and project structure. Use when starting a new UCP implementation.

mpp-setup

17
from OrcaQubits/agentic-commerce-skills-plugins

Scaffold an MPP project — install mppx SDK, configure payment methods, set up server middleware, and create a basic paid API endpoint. Use when starting a new MPP machine payments project from scratch.

spree-setup

17
from OrcaQubits/agentic-commerce-skills-plugins

Bootstrap a new Spree project — `create-spree-app` CLI (v5.2+), `spree-starter` Rails backend, the Next.js storefront repo, `bin/rails g spree:install`, sample data, Docker Compose, and the PostgreSQL + Redis + Sidekiq prerequisites. Use when starting a new Spree project from scratch or onboarding an existing repo.

shopify-setup

17
from OrcaQubits/agentic-commerce-skills-plugins

Set up a Shopify development environment — Shopify CLI installation, Partner account, development stores, environment variables, project structures for themes, apps, and Hydrogen. Use when starting a new Shopify project.

sf-setup

17
from OrcaQubits/agentic-commerce-skills-plugins

Set up a Salesforce Commerce development environment — sfcc-ci CLI for B2C, sf CLI for B2B, Business Manager access, sandbox management, dw.json configuration, .sfdx project setup, and project structures for SFRA, PWA Kit, and Lightning. Use when starting a new Salesforce Commerce project.

saleor-webhooks

17
from OrcaQubits/agentic-commerce-skills-plugins

Configure Saleor webhooks — async and sync events, subscription payloads, JWS/HMAC signature verification, retry policy, and event types. Use when building webhook-driven integrations.

saleor-testing

17
from OrcaQubits/agentic-commerce-skills-plugins

Test Saleor applications — pytest setup, Django test client, GraphQL test patterns, App testing, factory_boy fixtures, and webhook testing. Use when writing tests for Saleor projects.

saleor-storefront

17
from OrcaQubits/agentic-commerce-skills-plugins

Build Next.js storefronts for Saleor — GraphQL client setup, channel routing, Tailwind CSS, server components, checkout flow, and SEO. Use when developing Saleor storefronts.

saleor-shipping

17
from OrcaQubits/agentic-commerce-skills-plugins

Configure Saleor shipping — shipping zones, methods (price/weight-based), custom shipping Apps, warehouse-based allocation, and click-and-collect. Use when setting up delivery options.

saleor-security

17
from OrcaQubits/agentic-commerce-skills-plugins

Secure Saleor applications — JWT authentication, OIDC integration, App tokens, permission model, rate limiting, CORS, and security headers. Use when configuring Saleor security.