Before you are ready to run Saleor, you will need additional software installed on your computer.
Version 10 or later is required. Download the macOS installer from the Node.js downloads page.
Saleor needs PostgreSQL version 9.4 or above to work. Get the macOS installer from the PostgreSQL download page.
Command line tools for Xcode
Download and install the latest version of “Command Line Tools (macOS 10.x) for Xcode 9.x” from the Downloads for Apple Developers page.
Run the following command:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Use Homebrew to install the latest version of Python 3:
brew install python3
Use Homebrew to install Git:
brew install git
Use Homebrew to install the graphical libraries necessary for PDF creation:
brew install cairo pango gdk-pixbuf libffi
Once you have installed or updated the pre-requisite software, you are ready for your Saleor installation. Follow the steps below to start and execute the process:
1. Clone the repository (or use your own fork)
git clone https://github.com/mirumee/saleor.git
2. Enter the directory
3. Install all dependencies
pip install -r requirements.txt
We strongly recommend creating a virtual environment before installing any Python packages.
SECRET_KEY environment variable
We try to provide usable default values for all the settings. We have decided not to provide a default for
SECRET_KEY as we fear someone would inevitably ship a project with the default value left in the code.
The secret key should be a unique string that only your team knows. Running the code with a known
SECRET_KEYdefeats many of Django’s security protections. It can also lead to privilege escalation and remote code execution vulnerabilities. Consult Django’s documentation for details.
5. Create a PostgreSQL user
Unless configured otherwise, the store will use
saleor as both the username and password. Remember to assign your user the
SUPERUSER privilege. This will allow you to create databases and database extensions.
createuser --superuser --pwprompt saleor
saleor when prompted for password.
6. Create a PostgreSQL database
The database name is extracted from the
DATABASE_URLenvironment variable. If absent, it defaults to
7. Prepare the database
python manage.py migrate
This command creates database extensions. If you get an error related to the
CREATE EXTENSIONcommand, please return to the instructions in the PostgreSQL user creation step.
8. Install front-end dependencies
If this step fails, make sure you are using a recent version of Node.js.
9. Prepare front-end assets
npm run build-assets
10. Compile e-mails
npm run build-emails
11. Start the development server
python manage.py runserver