Doofinder Magento2
doofinder/doofinder-magento2
Integrates Doofinder search functionality with Magento 2. It allows connecting your store to Doofinder for improved search results and features.
Build Tests
Code Quality
Tested on Magento 2.4.8-p4
Recent Test History
Each release is tested against the latest Magento version at that time.
+14 older tests
Top Contributors
View LeaderboardShare This Module's Status
README
Loaded from GitHubDoofinder for Magento 2
Transform your Magento 2 search into a conversion machine. Join thousands of merchants using AI-powered search to increase sales and improve customer experience.
🚀 Get Started for Free | 🖥️ Live Demo | 📖 Full Documentation
Why Doofinder?
Doofinder turns your basic search bar into an advanced discovery engine. Using AI-powered searchandising and recommendations, we drive measurable gains in conversion and product discovery.
Key Features
- AI Assistant — A smart shopping guide that helps customers find products through natural conversation.
- AI Smart Search — Understands intent and handles typos or synonyms effortlessly.
- Searchandising — Boost, hide, or pin products to run targeted campaigns.
- Personalized Recommendations — Intelligent cross-selling based on real customer behavior.
- Visual Search — Let your shoppers find products using images.
- Auto-Indexing — Your catalog stays in sync automatically as you scale.
🛠 Installation & Quick Start
From Adobe Marketplace Install Doofinder from the Adobe Commerce Marketplace directly from your Magento admin, or via Composer:
composer require doofinder/doofinder-magento2
bin/magento setup:upgrade
From GitHub (latest release)
Download the latest release zip and install it as a local Composer package, or copy directly into app/code/Doofinder/Feed.
Then Complete setup using our step-by-step installation guide.
Requirements
| Supported versions | |
|---|---|
| PHP | 7.3, 7.4, 8.1, 8.2, 8.3, 8.4 (8.0 not supported by Magento 2) |
| Magento | 2.3.x, 2.4.x |
👨💻 Development & Maintainer Guide
This repository is optimized for local development using a Makefile and Docker.
.env sits at the repo root and powers both your Docker stack and the generated module files (what doofinder-configure pulls from templates/). It ships with sensible defaults — set your BASE_URL, Magento version, and Composer auth credentials, then make init. Optional overrides go in .env.local, which loads on top of .env.
[!NOTE]
make doofinder-configureregeneratesDoofinder/Feed/etc/config.xmlandDoofinder/Feed/Helper/Constants.phpfromtemplates/. Many other targets depend on it — do not commit those files with non-production values.
Environment and shop access
The root .env lists all variables with comments. For the dev stack, these are the ones you usually touch first:
| Variable | Role |
|---|---|
BASE_URL |
Shop hostname as seen by Docker (no https://). |
MAGENTO_VERSION |
Magento release to install. Adjust PHP_VERSION and COMPOSER_VERSION to match — see the compatibility matrix below. |
COMPOSER_AUTH_USERNAME |
Public key from your Magento Marketplace access key. |
COMPOSER_AUTH_PASSWORD |
Private key from the same access key. |
MYSQL_* |
Database credentials for the local shop. |
MAGENTO_ADMIN_USER / MAGENTO_ADMIN_PASSWORD |
Admin panel login after install. |
XDEBUG_HOST |
Docker bridge IP (172.17.0.1 on Linux; use host.docker.internal on macOS). |
Default access (Docker dev stack): After make init, the stack runs on the ports defined in docker-compose.yml (default mapping: 9012 → HTTP, 4012 → HTTPS). With the default BASE_URL=localhost from .env:
| URL | |
|---|---|
| Storefront (HTTP) | http://localhost:9012/ |
| Storefront (HTTPS) | https://localhost:4012/ |
| Admin (HTTP) | http://localhost:9012/admin |
| Admin (HTTPS) | https://localhost:4012/admin |
Admin login is MAGENTO_ADMIN_USER / MAGENTO_ADMIN_PASSWORD from .env (defaults: admin / admin123).
Use cases:
- First-time setup: Run
make initto build images, install Magento, and start containers. Usemake init-with-datato also load sample data. - Install the Doofinder module: after
make init, follow the installation guide. Alternatively, usemake doofinder-upgradefrom the CLI. - Start / stop the stack:
make start,make stop. - Uninstall the module:
make doofinder-uninstall. - Reinstall the module:
make doofinder-reinstall. - DB snapshot:
make db-backup(optionallymake db-backup prefix=_name). Restore withmake db-restore file=backup.sql.gz. - Code quality check:
make consistency(runs PHP Code Sniffer inside Docker with theMagento2standard). - Shell in the web container:
make dev-console. - Start from scratch: Run
make cleanto drop Docker volumes and./app; typeDELETEwhen prompted, then runmake initfor a fresh Magento. - Debug with Xdebug: The stack enables Xdebug via
XDEBUG_CONFIGindocker-compose.yml. SetXDEBUG_HOSTandXDEBUG_KEYin.envor.env.local, configure your IDE to listen for connections, and browse the shop. - Varnish: Included but commented out in
docker-compose.yml. Uncomment to enable; remember to comment the9012:80port in thewebcontainer. See Configure the Commerce application to use Varnish.
Compatibility Matrix
| Magento | PHP |
|---|---|
| 2.4.5 – 2.4.8 | 8.1, 8.2, 8.3, 8.4 |
| 2.4.0 – 2.4.4 | 7.4, 8.1, 8.2 |
| 2.3.x | 7.3, 7.4 |
PHP 8.0 is not supported by Magento 2. PHP versions below 7.4 are not recommended.
Support & Contributing
- Need Help? Visit our Support Portal.
- Found a Bug? Please contact Doofinder Support.
- Want to contribute? PRs are welcome! Before pushing, make sure PHP Code Sniffer passes — use
make consistencyor runcomposer install && vendor/bin/phpcsdirectly (requires PHP >= 8.3).
If you find this plugin useful, please give us a ⭐ to support the project!
Try Doofinder / Learn more
Ready to improve your store search? Get started with Doofinder for Magento 2.
This content is fetched directly from the module's GitHub repository. We are not the authors of this content and take no responsibility for its accuracy, completeness, or any consequences arising from its use.