Usage & Enterprise Capabilities
Shopaholic is the premier e-commerce ecosystem for the October CMS community. Built on the rock-solid Laravel PHP framework, it provides professional developers with an elite toolkit for constructing bespoke online shops. Unlike "cookie-cutter" platforms, Shopaholic follows a strict modular philosophy—you start with a powerful core and add exactly the features you need through a vast library of specialized e-commerce plugins.
The platform excels in its flexibility and performance. It allows developers to model complex product data with ease using its advanced property and attribute system. Because it is built on October CMS, it delivers the best-in-class administrative experience that content managers love, combined with the extreme power that Laravel developers expect.
Self-hosting Shopaholic gives agencies and brands total control over their e-commerce architecture, allowing them to build high-performance, unique shopping experiences that are perfectly tailored to their specific business requirements.
Key Benefits
Laravel Elegance: Benefit from the most popular and professional PHP framework.
Extreme Modularity: Only install what you need to keep your shop lean and fast.
Professional Developer UX: Built for engineers by engineers who understand e-commerce.
Market Ready: Rapidly add payments, shipping, and marketing tools via high-quality plugins.
Top-Tier Admin: One of the most intuitive and powerful administrative interfaces available.
Production Architecture Overview
A production Shopaholic environment typically includes:
PHP-FPM: Running the October CMS and Shopaholic application (PHP 8.1+).
MySQL / PostgreSQL: The primary relational database (MySQL 5.7+ recommended).
Redis: Used for caching, session management, and job queuing.
Nginx: The recommended web server and reverse proxy.
Storage: Local or cloud storage for product media and uploads.
Implementation Blueprint
Implementation Blueprint
Prerequisites
sudo apt update && sudo apt upgrade -y
sudo apt install docker.io docker-compose -y
sudo systemctl enable docker
sudo systemctl start dockerDocker Compose Production Setup
This configuration runs October CMS with Shopaholic alongside MySQL and Redis.
version: '3'
services:
app:
image: octobercms/october:latest
ports:
- "80:80"
environment:
- APP_ENV=production
- DB_CONNECTION=mysql
- DB_HOST=db
- DB_DATABASE=shopaholic
- DB_USERNAME=root
- DB_PASSWORD=password
depends_on:
- db
- redis
volumes:
- oct_data:/var/www/html/storage
restart: always
db:
image: mysql:8
environment:
- MYSQL_ROOT_PASSWORD=password
- MYSQL_DATABASE=shopaholic
volumes:
- db_data:/var/lib/mysql
restart: always
redis:
image: redis:7-alpine
restart: always
volumes:
oct_data:
db_data:Kubernetes Production Deployment (Recommended)
Shopaholic is highly scalable on Kubernetes using standard PHP-FPM deployment patterns.
# Deploy app and db as separate components
kubectl create deployment shopaholic-app --image=octobercms/october:latest
kubectl expose deployment shopaholic-app --port=80Benefits:
Elastic Web Scaling: Scale your application pods automatically based on traffic peaks.
Standardized Infrastructure: Use rolling updates to release new shop features and security patches safely.
Durable Media: Use Cloud SQL and S3 for maximum resilience for your store data and images.
Scaling Strategy
Faceted Search: For large catalogs, use the Shopaholic Elasticsearch plugin to ensure fast search and filtering.
Asynchronous Processing: Offload heavy tasks like email marketing and index updates to Laravel/October background jobs.
Database Indexing: Regularly monitor your database performance and optimize indexes for high-frequency queries.
CDN Strategy: Serve all static assets and product images through a global CDN.
Backup & Safety
Regular Backups: Automate daily database dumps and backup your
/storagedirectory frequently.Security Audits: Keep October CMS and the Shopaholic plugin updated to stay protected from new vulnerabilities.
HTTPS Everywhere: Force SSL/TLS for all store traffic to build customer trust and improve SEO.
Environment Secrets: Use Kubernetes Secrets or a secure vault to manage your
.envcredentials.