Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Aimeos Core Laravel Package

aimeos/aimeos-core

High-performance e-commerce core for Aimeos, providing the product catalog, pricing, customers, orders, and checkout logic. Framework-agnostic PHP with Laravel integration, extensible via plugins, optimized for large catalogs and multi-site, multi-language shops.

View on GitHub
Deep Wiki
Context7

Getting Started

Start by installing the core package via Composer (composer require aimeos/aimeos-core). The official documentation at aimeos.org is your primary resource — begin with the Quick Start and Getting Started guides. Your first real-world use case will likely involve setting up a basic product catalog with Laravel: publish the config (php artisan vendor:publish --provider="Aimeos\Shop\ShopServiceProvider"), configure your database (Aimeos uses its own schema — run php artisan ai:setup), and create your first product via the admin interface or CLI. The aimeos:setup command bootstraps the database, while aimeos:update handles schema/migration updates — treat these like Laravel’s migrations but Aimeos-specific.

Implementation Patterns

  • Dependency Injection & Service Providers: Aimeos is heavily extensible via DI. Extend Aimeos\Shop\Base\Provider to inject custom logic (e.g., pricing, inventory) into the shop flow.
  • Controller Overriding: To customize checkout or product display, extend controllers like Aimeos\Shop\Controller\ProductsController and register your version in config/shop.php.
  • Jobs & Events: Leverage Aimeos’ queue-based jobs (Aimeos\Shop\Jobs) for heavy tasks (e.g., indexing, email sending) and hook into events (e.g., aimeos.shop.product.detail.before) for side effects.
  • Admin UI Customization: Add new tabs, fields, or validation rules via Aimeos\Shop\Setup\Updater classes or JSON configuration in config/shop.php.
  • Multi-tenant Support: Define multiple shops per codebase using shop config entries (e.g., ['shop1', 'shop2']) — ideal for marketplaces or white-label deployments.

Gotchas and Tips

  • Database migrations are not Laravel-style: Aimeos manages its own schema — never run php artisan migrate. Use aimeos:setup and aimeos:update instead.
  • Cache quirks: Aimeos uses its own cache layer (aimeos-cache pool) separate from Laravel’s cache. Clear it manually via php artisan cache:clear --pool=aimeos-cache after config changes.
  • Translation system is locale-aware: Use Locale::get() to ensure strings render in the correct language — mixing app locales with Aimeos locales causes silent errors.
  • Debugging CLI commands: Use --verbose with aimeos:* commands to see SQL and internal logic — indispensable for diagnosing setup failures.
  • Extending models: While you can extend core models (e.g., Aimeos\MShop\Product\Item\Standard), prefer composition via Aimeos\MShop\Provider\Manager\Decorator classes to avoid breaking changes on upgrades.
  • Performance tip: For catalogs with 10k+ products, enable shop.product.index caching and avoid include() in Twig views — use render() and template fragments instead.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle
atriumphp/atrium
sandermuller/package-boost-laravel
sandermuller/boost-skills
redaxo/core
yusufgenc/filament-api-forge
l3aro/rating-star-for-filament
leek/filament-subtenant-scope
anil/file-picker
broqit/fields-ai