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):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.
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:
- Development
- Production
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:
Default Admin Login
After running migrations and seeding, your Site Store Pro installation includes a default administrator account:Default Admin Credentials
Quick Reference
Full Installation Command Sequence (AWS EC2 / ECS / Linux)
Full Installation Command Sequence (AWS EC2 / ECS / Linux)
Optional Extras
Optional Extras
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.- Open PowerShell as an Administrator and execute:
- Restart your computer when the process completes.
- Download and install Docker Desktop for Windows.
- 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.- Download the correct version of Docker Desktop for Mac:
- Mac with Apple Silicon (M1, M2, M3, M4 chips)
- Mac with Intel chip
- Double-click the downloaded
.dmgfile, drag the Docker icon into your Applications folder, and launch it. - Grant the required privileged permissions when prompted by macOS.
Step 2: Prepare Your Local Repository
-
Open your terminal (PowerShell on Windows, or Terminal on macOS) and clone the application:
-
Initialize your local configuration file from the template:
- Windows (PowerShell):
Copy-Item .env.example .env - macOS (Terminal):
cp .env.example .env
- Windows (PowerShell):
-
Create the Nginx reverse-proxy configuration folder structure:
- Windows (PowerShell):
New-Item -Path "docker/nginx" -ItemType "directory" -Force - macOS (Terminal):
mkdir -p docker/nginx
- Windows (PowerShell):
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 assitestore_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
- Verify that your Docker Desktop software dashboard status icon shows that the engine is active and running.
- Clear out any stale, broken, or cached Docker build layers to guarantee a fresh initialization:
- Execute the compilation script in your project root terminal folder:
- Install
predispackage inside the container (enables Redis caching, sessions, and queue support without requiring native PHP C-extensions): - Run the application core encryption algorithms and core database schemas:
- (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: - 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:- Navigate to the admin dashboard panels.
- Click on the Top Right Green Dot (positioned next to the Light/Dark Mode toggle icon).
- 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:
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.
- AWS EC2 / ECS (Amazon Linux - ec2-user:apache)
- Ubuntu / Debian (Nginx or Apache - www-data)
2. Redis Configuration & “Class Redis not found”
Laravel defaults to thephpredis 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:
Recommended Fix: Use predis (Pure PHP Driver)
predis runs entirely in userland PHP and requires no external .dll or .so extensions:
-
Install
predis:- Local / Dedicated Server / AWS EC2:
- Docker Container:
- Local / Dedicated Server / AWS EC2:
-
Configure
.env: -
Clear configuration cache:
Alternative: Enable Native phpredis C-Extension
If you prefer the native C-extension:
- Windows: Add
extension=php_redis.dll(orextension=redis) tophp.iniand restart web server. - Linux (Amazon Linux / RHEL): Install via
sudo pecl install redisorsudo dnf install php-pecl-redis. - Linux (Ubuntu / Debian): Install via
sudo apt-get install php-redis. - Set
.env:REDIS_CLIENT=phpredis.
