OmniMart Pro is built with the Laravel 13 Framework and is optimized for PHP 8.4+ (minimum PHP 8.2).
Before launching the web installer, please ensure your environment (whether a local development workspace or a production web server) matches the requirements detailed below.
Core Software Requirements
These requirements apply equally to both local development environments (localhost) and production web servers:
| Requirement | Local Environment (Localhost) | Production Server |
|---|---|---|
| PHP Version | PHP 8.4+ (PHP 8.2+ supported) | PHP 8.4+ (Standard CGI/FPM or CLI) |
| Database | MySQL 8.0+ or MariaDB 10.4+ | MySQL 8.0+ or MariaDB 10.4+ |
| Web Server | Laravel Herd (Recommended), Laragon, XAMPP, or Docker | Nginx, Apache with mod_rewrite, or LiteSpeed |
| HTTPS Support | Optional for localhost development | Strongly recommended (Required for Stripe, PayPal, and live payment webhooks) |
Required PHP Extensions
These extensions are required by Laravel 13 and the OmniMart Pro core eCommerce and POS engine:
| Extension | Purpose & Usage |
|---|---|
bcmath | Arbitrary precision mathematics for financial calculations, order totals, tax rates, and POS change |
ctype | Character type checking |
curl | HTTP client queries for 14 payment gateways, SMS gateways, and license verification |
dom | XML document processing and HTML DOM parsing |
exif | Reading image metadata and camera orientation for product photo uploads |
fileinfo | Detecting accurate file MIME types for upload security |
gd | Image manipulation, product thumbnail generation, and brand logo resizing |
hash | Secure hashing algorithms and token validation |
iconv | Character set conversion for multilingual text |
intl | Internationalization formatting, currency symbols, and localized date handling |
json | Fast JSON data encoding and parsing for settings, payment parameters, and variant matrices |
mbstring | Multi-byte string handling for international languages and RTL scripts |
openssl | Encrypted secure connections, CSRF tokens, and payment API communication |
pcre | Regular expression pattern matching |
pdo / pdo_mysql | Database connection drivers for MySQL/MariaDB |
session | User session handling across customer, staff, and admin auth guards |
tokenizer | Source code parsing and template compilation |
xml | XML document handling and RSS/sitemap feeds |
zip | Handling compressed archives, CSV backups, and addon packages |
Important: The PHP
symlinkfunction must be enabled on your server to create symbolic links betweenstorage/app/publicandpublic/storage.
Required PHP Directives (php.ini)
To ensure smooth file uploads, CSV imports, and database migrations, configure your php.ini directives with the following minimum and recommended values:
| Directive | Minimum Value | Recommended Value | Reason |
|---|---|---|---|
upload_max_filesize | 32M | 64M - 128M | Uploading high-resolution product galleries, digital download files & logos |
post_max_size | 32M | 64M - 128M | Submitting multi-image product forms, CSV spreadsheets, and bulk assets |
memory_limit | 256M | 512M | Compiling views, processing large CSV imports, and running migrations |
max_execution_time | 120 | 300 | Preventing timeout errors during installer database migration & seeding |
max_input_time | 120 | 300 | Allowing complete transmission of large multipart catalog uploads |
cPanel Configuration Guide
If you are deploying OmniMart Pro to a cPanel shared hosting account:
- Log in to your cPanel Control Panel.
- Navigate to Software → Select PHP Version (then click the Options tab), or open MultiPHP INI Editor and select your domain.
- Set your active PHP version to 8.4 (or 8.2+).
- Update the values for
upload_max_filesize,post_max_size,memory_limit, andmax_execution_time. - Click Apply / Save Changes.
Directory Permissions
The web installer and application runtime require write access to the following directories:
| Directory Path | Required Permission | Description |
|---|---|---|
storage/app/ | 775 / Writable | Application file storage, digital products, and installation lock markers |
storage/framework/ | 775 / Writable | Framework compiled views, sessions, and file caches |
storage/logs/ | 775 / Writable | Application error logs (laravel.log) |
bootstrap/cache/ | 775 / Writable | Compiled bootstrap configuration, services, and route caches |
public/assets/ | 775 / Writable | Dynamic asset storage (sitemaps, uploaded site media) |
On Linux servers, you can set the appropriate permissions using the terminal:
chmod -R 775 storage bootstrap/cache public/assets
chown -R www-data:www-data storage bootstrap/cache public/assets
(Replace www-data:www-data with your web server's user/group if running cPanel or custom user environments).
Frontend Asset Compilation Note (Vite & Tailwind CSS)
The public storefront and customer account area are built with Tailwind CSS 4.x and Alpine.js, bundled via Vite.
- OmniMart Pro ships with pre-compiled, optimized production assets ready for immediate use.
- If you modify frontend styles (
resources/css/front.css) or frontend scripts (resources/js/front.js), runnpm run buildin your development environment to generate fresh production bundles. - The administrative dashboard (
/admin) uses standalone Bootstrap and jQuery assets that do not require Node.js or npm to run.