Server Requirements
StoreMine runs on any standard PHP hosting that meets the requirements below — a VPS, a dedicated server, or quality shared hosting with SSH access.
SSH access required
Installation is CLI-based. You need a terminal (SSH) on the server to run composer, npm and php artisan commands. Hosting without SSH access is not supported.
Minimum versions
| Component | Version | Notes |
|---|---|---|
| PHP | 8.3 or newer | see required extensions below |
| Composer | 2.x | dependency manager for PHP |
| Node.js | 20 or newer | build-time only — not needed at runtime |
| MySQL | 8.0+ (or MariaDB 10.6+) | SQLite works for light testing only |
| Web server | nginx or Apache | sample configs included in deploy/ |
| Redis | optional | for cache & queue; database drivers are the default |
Required PHP extensions
pdo · pdo_mysql · mbstring · openssl · tokenizer · xml · ctype · json · curl · gd · fileinfo
fileinfo is not optional
Upload validation detects a file's real type from its bytes using the fileinfo extension. Without it, uploads are rejected rather than trusted — which is safe, but will look like a broken media library.
Recommended PHP settings
memory_limit = 512M
upload_max_filesize = 100M
post_max_size = 100M
max_execution_time = 120
Outbound connections
Depending on which features you enable, the server needs outbound HTTPS access to:
| Service | Needed for |
|---|---|
api.stripe.com | Stripe payments |
api.paypal.com | PayPal payments |
| bKash / SSLCommerz endpoints | Bangladesh payment gateways |
api.anthropic.com | Claude AI features (optional) |
| Gemini / FAL / Replicate / OpenAI | AI Studio image & video (optional) |
exchangerate.host | automatic currency rates (optional) |
| Steadfast API | courier integration (optional) |
| Your S3 / DigitalOcean Spaces endpoint | cloud media storage (optional) |
A note on shared hosting
StoreMine needs two long-running processes in production:
- A queue worker (
php artisan queue:work) — emails, campaigns and AI jobs run in the background - The scheduler (one cron entry) — scheduled campaigns, currency refresh
If your hosting cannot run a persistent queue worker (via Supervisor or similar), choose a small VPS instead — a 1 GB RAM instance is enough to start.