saleor-dashboard is a free, open source e-commerce platforms project written in TypeScript and released under BSD-3-Clause. It has 1,047 GitHub stars, 1,235 forks and 153 open issues, and was last pushed 16 hours ago. On this registry it ranks #35 of 46 tracked projects in E-commerce Platforms, with 5 head-to-head comparisons available. It gained 13 stars over the last 30 tracked days.

What is saleor-dashboard?

Saleor Dashboard is an open-source, GraphQL-powered single-page application that gives operators a browser interface for running a Saleor e-commerce backend, built for merchants, store administrators, and development teams who host their own Saleor instance.

What it is

Saleor Dashboard is the administration client for Saleor, an open-source e-commerce platform. It is written in TypeScript as a React single-page application and speaks to a Saleor backend exclusively over GraphQL, which means the dashboard holds no store data of its own — it reads and writes through the Saleor API and renders the result in the browser. The project lives in the Saleor ecosystem alongside the Saleor server itself, which the README lists as a prerequisite: there is no useful dashboard without a running Saleor instance to point it at.

The concrete problem it solves is store administration without hand-written API work. Before a dashboard exists, routine tasks such as inspecting orders, products, and configuration for a Saleor store have to be driven directly against the GraphQL API. The dashboard replaces that manual query-and-script workflow with a maintained interface, and it keeps that interface aligned with the schema by supporting both stable and staging Saleor graphql.schema files during development.

Key capabilities

  • A GraphQL client layer for a Saleor backend, developed against both stable and staging Saleor schemas as described in docs/multi-schema.md.
  • A development server started with pnpm run dev, which by default serves the dashboard over http://localhost:9000.
  • Optional named-URL development through portless: the repository ships a portless.json configuration and can serve the dashboard at a stable https://dashboard.localhost instead of fighting over port 9000.
  • Per-worktree development URLs when portless is used, with the branch name prepended, for example https://my-branch.dashboard.localhost.
  • Environment-variable configuration, documented in docs/configuration.md, with CORS handling tied to the Saleor instance's allowed client hosts.
  • Error tracking support through a Sentry adapter, covered by docs/error-tracking.md and docs/sentry-adapter.md.
  • Container and deployment paths, documented in docs/docker.md and docs/deployment.md, alongside a test suite described in docs/running-tests.md.

Who uses it and how

  • Store operators and administrators who need to manage a Saleor store through a browser rather than through direct GraphQL calls against the API.
  • Developers running several checkouts or git worktrees at the same time, who use portless so each one gets its own URL instead of competing for port 9000.
  • Teams maintaining both stable and staging Saleor backends, who develop against multiple graphql.schema variants.
  • Teams that need visibility into front-end failures and therefore wire the dashboard into Sentry through the documented adapter.
  • Teams deploying the dashboard as a container, following the Docker and deployment documentation.

Getting started

Clone the repository, run pnpm install, configure environment variables as described in docs/configuration.md, then start the development server with pnpm run dev. This requires Node.js v24, the PNPM package manager, and a running Saleor instance; Docker usage is documented separately in docs/docker.md.

How it compares

No comparable dashboards or alternative administration clients are named in the facts for this project, so on that evidence Saleor Dashboard stands alone in this registry. It is best understood not as a choice between competing products but as the official administration client paired with the Saleor server itself.

When to use it — and when not to

A self-hoster must operate Node.js v24 with PNPM, maintain a running Saleor instance, keep environment variables and CORS allowed client hosts in sync, and optionally provision container deployment and Sentry error tracking. Anyone without a Saleor backend, or without the appetite to run one, should not pick this up, because the dashboard has no standalone purpose. The repository also carries 153 open issues and a README that defers most operational detail to separate documentation files, so adopters should read docs/configuration.md and docs/deployment.md before assuming the setup is turnkey.

project readme (upstream, from github) — read inline
Saleor Dashboard 25/26

Saleor Dashboard

A GraphQL-powered, single-page dashboard application for Saleor.

Get to know Saleor:
Talk to a human | Talk to the API


🏠 Website • 📚 Docs • 📰 Blog • 🐦 Twitter • 💬 Discord

• 

🔎 Explore Code

Prerequisites

  • Node.js v24
  • A running instance of Saleor
  • PNPM package manager - preferably installed via corepack

Development

  1. Clone the repository:
git clone https://github.com/saleor/saleor-dashboard.git
  1. Enter the project directory:
cd saleor-dashboard
  1. Install the dependencies:
pnpm install
  1. Configure the env vars as described in docs/configuration.md.

  2. Start the development server with:

pnpm run dev

Note: If you see CORS errors, check CORS configuration of your Saleor instance or CORS settings in the Cloud Console.

Named URLs with portless (optional)

portless serves the dev server on a stable https://dashboard.localhost instead of http://localhost:9000. Useful when you run several checkouts or worktrees at once — each one gets its own URL instead of fighting over port 9000.

The repo is already configured (portless.json), but portless itself is not a dependency — install it globally:

npm install -g portless

Then, instead of pnpm run dev:

portless

The first run asks for your password once, to bind port 443 and trust a local CA. It runs the dev script and prints the URL. In a git worktree the branch name is prepended, e.g. https://my-branch.dashboard.localhost.

pnpm run dev keeps working as before — portless is opt-in.

Docs

Frequently asked questions

Is saleor-dashboard free to use?

saleor-dashboard is open source under the BSD-3-Clause licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does saleor-dashboard do?

A GraphQL-powered, single-page dashboard application for Saleor.

What is saleor-dashboard written in?

saleor-dashboard is primarily written in TypeScript. Its source is publicly available at https://github.com/saleor/saleor-dashboard, and it has 1,047 GitHub stars.