Skip to main content
This guide walks you through a complete Site Store Pro installation — from meeting server requirements and configuring your environment to running database migrations, seeding demo data, compiling frontend assets, and enabling optional payment provider SDKs. Follow the steps in order for the smoothest setup experience.

Requirements

Before you begin, make sure your local environment meets the following requirements:

PHP 8.3+

Site Store Pro requires PHP 8.3 or higher with the standard Laravel extensions enabled (BCMath, Ctype, Fileinfo, JSON, Mbstring, OpenSSL, PDO, Tokenizer, XML). (PHP 8.5 Recommended)

Composer

Composer is required to install PHP dependencies. Ensure you have the latest stable version installed globally.

Node.js & npm

Node.js (LTS recommended) and npm are required to install and compile frontend assets.

Database

MySQL / MariaDB / Amazon RDS. MySQL 8+ or MariaDB 10.6+ is preferred.
The phpoffice/phpspreadsheet package is required if you plan to use the bulk CSV/spreadsheet product import feature. It is not bundled by default — see step 9 below.

Installation Steps

1

Clone the Repository

Clone the Site Store Pro repository to your local machine (or online server / AWS EC2/ECS instance) and navigate into the project directory:
2

Install PHP and Node Dependencies

Install all backend and frontend dependencies:
3

Configure Your Environment

Copy the example environment file and generate your application key:
Open the newly created .env file and update the database configuration to match your db setup and install URL (both APP_URL and ASSET_URL should reflect be the same URL value) and your install’s subdirectory (if applicable);
4

Create Storage Directories & Set Permissions (AWS EC2 / ECS / Linux)

When installing on an AWS EC2 / ECS instance (Amazon Linux) or remote server, ensure that all framework storage directories exist and have proper ownership and write permissions for ec2-user:apache (or www-data on Ubuntu):
If storage/framework/views or other storage folders are missing or unwritable by Apache/PHP, PHP will trigger an error: tempnam(): file created in the system's temporary directory.
5

Run Database Migrations and Seed

Run a fresh migration and seed the database with all default data:
The seeder creates all default roles, a home page, common cms pages such as privacy, about us, contact us, an admin account, and sample configuration. A fresh install typically completes in under a minute.
migrate:fresh will drop all existing tables and rebuild from scratch. Never run this command on a production database or any database containing data you need to keep.
6

(Optional) Load Developer QA Seed Data

If you want to install a demo storefront with sample (training) data:
7

Compile Frontend Assets

Build the frontend assets using Vite:
Starts a Vite dev server with hot module replacement (HMR):
8

(Optional) Install Payment SDK Dependencies

Site Store Pro supports Stripe, Paddle (and Paypal) as BUILT-IN (default) payment providers.
Payment provider credentials (API keys, webhook secrets, etc.) are configured via your .env file after the respective SDK is installed. Refer to the Payment Configuration guide for full setup instructions.
9

(Optional) Install Bulk Excel File Import Support

To enable bulk product import and export via Excel spreadsheet files, install the phpoffice/phpspreadsheet package:
10

Create the Storage Symlink

In production (and recommended for local development too), create the public storage symlink so uploaded files are accessible via the browser:
Without this symlink, product images and other uploaded media will not be publicly accessible. This step is required for any environment where file uploads are used.

Default Admin Login

After running migrations and seeding, your Site Store Pro installation includes a default administrator account:

Default Admin Credentials

Change the default admin password immediately after your first login, especially before deploying to any publicly accessible environment. To Change The Temporary (Default) Password: Click on Top Right Green Dot (Next To Light/Dark Mode Icon) Then Click On ‘My Profile’ (Update Password Section Is On Middle Of Page)

Quick Reference


Local Docker Development Setup Guide

This guide details how to set up and run the Site Store Pro Laravel eCommerce application locally in an isolated multi-container environment using Docker.

Step 1: Install System Prerequisites

For Windows Users

Docker requires Windows Subsystem for Linux (WSL 2) to run efficiently.
  1. Open PowerShell as an Administrator and execute:
  2. Restart your computer when the process completes.
  3. Download and install Docker Desktop for Windows.
  4. During installation, verify that the “Use WSL 2 instead of Hyper-V” setting is enabled.

For macOS Users

Docker runs natively via the macOS Hypervisor framework.
  1. Download the correct version of Docker Desktop for Mac:
    • Mac with Apple Silicon (M1, M2, M3, M4 chips)
    • Mac with Intel chip
  2. Double-click the downloaded .dmg file, drag the Docker icon into your Applications folder, and launch it.
  3. Grant the required privileged permissions when prompted by macOS.

Step 2: Prepare Your Local Repository

  1. Open your terminal (PowerShell on Windows, or Terminal on macOS) and clone the application:
  2. Initialize your local configuration file from the template:
    • Windows (PowerShell): Copy-Item .env.example .env
    • macOS (Terminal): cp .env.example .env
  3. Create the Nginx reverse-proxy configuration folder structure:
    • Windows (PowerShell): New-Item -Path "docker/nginx" -ItemType "directory" -Force
    • macOS (Terminal): mkdir -p docker/nginx

Step 3: Add the Configuration Files

Create the following three files in your project root folder:

1. Dockerfile

2. docker-compose.yml

3. docker/nginx/default.conf


Step 4: Configure Your Local .env

Open your local .env file and verify that the core connection strings map correctly to Docker’s internal container routing network.

CRITICAL SECURITY WARNING

The values listed below (such as sitestore_db, root_password, and user_password) match the default variables provided in the docker-compose.yml file. These configurations are provided for local development example purposes only. You must change these credentials to unique, secure strings for your specific install. Never use these default passwords in a production environment or any public-facing server.

Step 5: Start and Seed the Architecture

  1. Verify that your Docker Desktop software dashboard status icon shows that the engine is active and running.
  2. Clear out any stale, broken, or cached Docker build layers to guarantee a fresh initialization:
  3. Execute the compilation script in your project root terminal folder:
  4. Install predis package inside the container (enables Redis caching, sessions, and queue support without requiring native PHP C-extensions):
  5. Run the application core encryption algorithms and core database schemas:
  6. (Optional) Load Developer QA Seed Data
    If you want to install a demo storefront populated with sample products, variants, categories, brands, testimonials, slideshows, digital downloads, and 24 sample product reviews, execute the target class seeder inside the running container:
  7. Access your running environment in your local web browser: http://localhost:8000

Step 6: Default Admin Login

After running migrations and seeding, your Site Store Pro installation includes a default administrator account for initial access:

Warning

Change the default admin password immediately after your first login, especially before deploying to any publicly accessible or staging environment. To change the temporary password:
  1. Navigate to the admin dashboard panels.
  2. Click on the Top Right Green Dot (positioned next to the Light/Dark Mode toggle icon).
  3. Click on ‘My Profile’ from the dropdown menu to set a secure password.

Step 7: Environment Lifecycle Commands

  • Stop the environment (preserves data): docker compose down
  • Wipe the database volume to start fresh: docker compose down -v
  • Tail active runtime system error logs: docker compose logs -f

Server Configuration & Troubleshooting

1. Directory Permissions & tempnam() Errors

If you see the following notice or exception:
This error occurs when PHP attempts to create temporary compiled Blade view files in storage/framework/views (or session/cache files) and finds that the directory either does not exist or is not writable by the web server process.

2. Redis Configuration & “Class Redis not found”

Laravel defaults to the phpredis connector (PhpRedisConnector), which requires the native PHP C-extension (ext-redis). If your server or Docker container does not have this extension enabled, switching to Redis for caching and sessions will result in:
predis runs entirely in userland PHP and requires no external .dll or .so extensions:
  1. Install predis:
    • Local / Dedicated Server / AWS EC2:
    • Docker Container:
  2. Configure .env:
  3. Clear configuration cache:

Alternative: Enable Native phpredis C-Extension

If you prefer the native C-extension:
  • Windows: Add extension=php_redis.dll (or extension=redis) to php.ini and restart web server.
  • Linux (Amazon Linux / RHEL): Install via sudo pecl install redis or sudo dnf install php-pecl-redis.
  • Linux (Ubuntu / Debian): Install via sudo apt-get install php-redis.
  • Set .env: REDIS_CLIENT=phpredis.