MageBridge is a Joomla 5 extension for integrating Joomla CMS with Magento/OpenMage e-commerce platform.
- Keep root AGENTS.md concise - Only essential, cross-cutting knowledge belongs here. Domain-specific knowledge should be placed in
AGENTS.mdfiles within relevant subdirectories or in dedicated markdown files underdocs/ - Record valuable knowledge when solving problems - When discovering useful patterns or solutions, document them in the most relevant file
- Never modify CLAUDE.md directly - It is a symlink to AGENTS.md
- All files and code must be written in English - Including PHPDoc, inline comments, commit messages, and markdown files
- .devcontainer/AGENTS.md - Docker environment, debugging, and troubleshooting
- tests/AGENTS.md - Unit testing strategy
- e2e/AGENTS.md - E2E testing with Playwright
- Development Patterns - Code patterns, namespace conventions, and technical reference
- Plugin Service Providers - Joomla 5 plugin service provider pattern
- Joomla v6 Compatibility - PathHelper pattern for forward compatibility
./bundle.sh- Bundle the extensioncomposer lint- PHP CS Fixer dry-run checkcomposer fix- Auto-format codecomposer run phpstan- Static analysis (may require--memory-limit=512M)composer test- Unit tests (PHPUnit)- Run integration tests via Docker environment (see .devcontainer/AGENTS.md)
- E2E tests with Playwright (see e2e/AGENTS.md)
- PSR-12 coding standard
- PHP 8.3+, use strict types whenever possible
- Always declare namespaces and imports, avoid legacy global classes
- Use PHPDoc to annotate public APIs and provide meaningful comments for array shapes
- Use
usestatements for imports, avoid FQCN in PHPDoc
- Validate input via Joomla filters
- Prefer exception handling over die()
- Never log sensitive information
- Use Joomla logging helpers
/joomla/components/com_magebridge/services/provider.php/joomla/administrator/components/com_magebridge/services/provider.php
/joomla/modules/mod_magebridge_*/services/provider.php
/joomla/plugins/*/*/services/provider.php
/joomla/libraries/yireo/services/provider.php