Environment setup

You need a running PrestaShop 9 instance to preview and test your theme during development.

Hummingbird includes Docker Compose configurations that spin up a full PrestaShop environment (application, database, phpMyAdmin) with your theme mounted automatically. These configurations require PrestaShop 9.1+.

Two images are available:

Image Startup Use case
PrestaShop (prestashop/prestashop) ~2–5 min Full installation wizard, closest to production
Flashlight (prestashop/prestashop-flashlight) ~10 sec Pre-installed dump, ideal for fast iteration and testing

Setup

From the Hummingbird root directory:

cp docker/.env-example docker/.env

Edit docker/.env with your settings:

PS_TAG=9.1.0
PLATFORM=linux/amd64       # or linux/arm64 for Apple Silicon Macs
ADMIN_EMAIL=[email protected]
ADMIN_PASSWORD=prestashop

Start the environment

# Standard PrestaShop
docker compose -f docker/docker-compose-prestashop.yml up -d

# Or Flashlight (faster startup)
docker compose -f docker/docker-compose-flashlight.yml up -d
Service URL
PrestaShop http://localhost:8887
Back Office http://localhost:8887/admin-dev
phpMyAdmin http://localhost:8889

Stop the environment

Use the same compose file you started with:

# If you started with Standard PrestaShop
docker compose -f docker/docker-compose-prestashop.yml down -v

# If you started with Flashlight
docker compose -f docker/docker-compose-flashlight.yml down -v

See the Hummingbird Docker setup for full details.

Option 2: Local PHP stack

If you prefer a traditional setup (XAMPP, MAMP, Laragon, or native PHP), install PrestaShop manually. Check the system requirements for the PHP, MySQL, and web server versions needed, then follow the installation guide.

Once installed, copy your theme folder into the /themes/ directory of your PrestaShop installation, then activate it from the Back Office under Design > Theme & Logo.

Configure for development

Enable Developer Mode for template debugging and error reporting. You can either:

  • Set _PS_MODE_DEV_ to true in config/defines.inc.php
  • Or toggle it from the Back Office under Advanced Parameters > Performance > Debug mode

Additionally, disable caching and file merging so your changes appear immediately. In the Back Office under Advanced Parameters > Performance:

  • Smarty: set Force compilation to Yes and Cache to No.
  • CCC (Combine, Compress, Cache): disable all options to prevent PrestaShop from merging and minifying your CSS and JavaScript files.
In Developer Mode, HTML comments show the source path of each rendered template, useful to confirm which file is actually being loaded. For example:
<!-- begin /var/www/html/themes/mytheme/templates/catalog/product.tpl -->