PHPackages                             thealonekhan/aimeos-laravel - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. thealonekhan/aimeos-laravel

ActiveLaravel-bundle

thealonekhan/aimeos-laravel
===========================

Professional, full-featured and high performance Laravel e-commerce package for online shops and complex B2B projects

2021.07.6(4y ago)03MITPHP

Since Apr 27Pushed 4y agoCompare

[ Source](https://github.com/thealonekhan/aimeos-laravel)[ Packagist](https://packagist.org/packages/thealonekhan/aimeos-laravel)[ Docs](https://aimeos.org/Laravel)[ RSS](/packages/thealonekhan-aimeos-laravel/feed)WikiDiscussions master Synced 3d ago

READMEChangelogDependencies (20)Versions (142)Used By (0)

[ ![Aimeos logo](https://camo.githubusercontent.com/e55b7a8426f14ba6040d604746b03b7e096af41ede8fead0ea817cbb8d60f998/68747470733a2f2f61696d656f732e6f72672f66696c6561646d696e2f74656d706c6174652f69636f6e732f6c6f676f2e706e67 "Aimeos")](https://aimeos.org/)Aimeos Laravel ecommerce package
================================

[](#aimeos-laravel-ecommerce-package)

[![Total Downloads](https://camo.githubusercontent.com/2cc0a057e742da7db0df7a55ba74fcc87a7db127d9ccf1ae5a4f79c34a4b921e/68747470733a2f2f706f7365722e707567782e6f72672f61696d656f732f61696d656f732d6c61726176656c2f642f746f74616c2e737667)](https://packagist.org/packages/aimeos/aimeos-laravel)[![Build Status](https://camo.githubusercontent.com/59587c7c3cf1de727d78663fa21fe1c0f04b4e4fd979976a48ddadfcb96d0454/68747470733a2f2f636972636c6563692e636f6d2f67682f61696d656f732f61696d656f732d6c61726176656c2e7376673f7374796c653d736869656c64)](https://circleci.com/gh/aimeos/aimeos-laravel)[![Coverage Status](https://camo.githubusercontent.com/4e70f99d6a9e4e2fa7031ee510b910d6f1cc164e406bab8a0a91c3246a390d2c/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f61696d656f732f61696d656f732d6c61726176656c2f62616467652e7376673f6272616e63683d6d617374657226736572766963653d676974687562)](https://coveralls.io/github/aimeos/aimeos-laravel?branch=master)[![Scrutinizer Code Quality](https://camo.githubusercontent.com/bc6040ba898f9870614c3fd991d46b2c245aec4910aef864d57a29b00a719c0a/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f61696d656f732f61696d656f732d6c61726176656c2f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/aimeos/aimeos-laravel/?branch=master)[![License](https://camo.githubusercontent.com/35ac77be73f2d12727db69e6c7a7f486af26d1370c076f179e61f40a1f9728d0/68747470733a2f2f706f7365722e707567782e6f72672f61696d656f732f61696d656f732f6c6963656e73652e737667)](https://packagist.org/packages/aimeos/aimeos)

⭐ Star us on GitHub — it helps!

[Aimeos](https://aimeos.org/Laravel) is THE professional, full-featured and ultra fast e-commerce package for Laravel! You can install it in your existing Laravel application within 5 minutes and can adapt, extend, overwrite and customize anything to your needs.

[![Aimeos Laravel demo](https://camo.githubusercontent.com/4cc4e2e8c8624f003fe7c3791b437a0c4b1b4cb91eef7b17d9e083a369ed0676/68747470733a2f2f61696d656f732e6f72672f66696c6561646d696e2f61696d656f732e6f72672f696d616765732f61696d656f732d6769746875622e706e67)](http://laravel.demo.aimeos.org/)

Table of content
----------------

[](#table-of-content)

- [Supported versions](#supported-versions)
- [Basic application](#basic-application)
- [Database](#database)
- [Installation](#installation)
- [Setup](#setup)
- [Admin](#admin)
- [Hints](#hints)
- [License](#license)
- [Links](#links)

Supported versions
------------------

[](#supported-versions)

This document is for the Aimeos Laravel package **2020.10 and later**.

- Stable release: 2021.07 (6.x, 7.x and 8.x)
- LTS release: 2020.10 (6.x, 7.x and 8.x)

If you want to **upgrade between major versions**, please have a look into the [upgrade guide](https://aimeos.org/docs/latest/laravel/setup/#upgrade)!

Basic application
-----------------

[](#basic-application)

### Full shop application

[](#full-shop-application)

If you want to set up a new application or test Aimeos, we recommend the [Aimeos shop application](https://github.com/aimeos/aimeos). You need *composer 2.1+* to install Aimeos.

It will install a complete shop system including demo data for a quick start without the need to follow the steps described in this readme.

```
wget https://getcomposer.org/download/latest-stable/composer.phar -O composer
php composer create-project aimeos/aimeos myshop

```

More about the full package: ⭐ [Aimeos shop](https://github.com/aimeos/aimeos)

### Shop package only

[](#shop-package-only)

The Aimeos Laravel online shop package is a composer based library. It can be installed easiest by using [Composer 2.1+](https://getcomposer.org) in the root directory of your exisisting Laravel application:

```
wget https://getcomposer.org/download/latest-stable/composer.phar -O composer
php composer require aimeos/aimeos-laravel:~2021.07

```

Database
--------

[](#database)

Make sure that you've **created the database** in advance and added the configuration to the `.env` file in your application directory. Sometimes, using the .env file makes problems and you will get exceptions that the connection to the database failed. In that case, add the database credentials to the **resource/db section of your ./config/shop.php**file too!

If you don't have at least MySQL 5.7.8 or MariaDB 10.2.2 installed, you will probably get an error like

`Specified key was too long; max key length is 767 bytes`

To circumvent this problem, drop the new tables if there have been any created and change the charset/collation setting in `./config/database.php` to these values before installing Aimeos again:

```
'connections' => [
    'mysql' => [
        // ...
        'charset' => 'utf8',
        'collation' => 'utf8_unicode_ci',
        // ...
    ]
]
```

If you want to use a database server other than MySQL, please have a look into the article about [supported database servers](https://aimeos.org/docs/latest/infrastructure/databases/)and their specific configuration. Supported are:

- MySQL, MariaDB (fully)
- PostgreSQL (fully)
- SQL Server (fully)

Installation
------------

[](#installation)

Then, add these lines to the composer.json of the **Laravel skeleton application**:

```
    "prefer-stable": true,
    "minimum-stability": "dev",
    "require": {
        "aimeos/aimeos-laravel": "~2021.07",
        ...
    },
    "scripts": {
        "post-update-cmd": [
            "@php artisan migrate",
            "@php artisan vendor:publish --tag=public --force",
            "\\Aimeos\\Shop\\Composer::join"
        ],
        ...
    }

```

Afterwards, install the Aimeos shop package using

`composer update`

In the last step you must now execute these artisan commands to get a working or updated Aimeos installation:

```
php artisan vendor:publish --all
php artisan migrate
php artisan aimeos:setup --option=setup/default/demo:1

```

In a production environment or if you don't want that the demo data gets installed, leave out the `--option=setup/default/demo:1` option.

Setup
-----

[](#setup)

To see all components and get everything working, you also need to create your main Blade template in `resources/views/app.blade.php` (before 2021.07 only). This is a working example using the [Twitter bootstrap CSS framework](http://getbootstrap.com/):

```
>

	@yield('aimeos_header')
	Aimeos on Laravel

		/* Theme: Black&White */
		/* body {
			--ai-primary: #000; --ai-primary-light: #000; --ai-primary-alt: #fff;
			--ai-bg: #fff; --ai-bg-light: #fff; --ai-bg-alt: #000;
			--ai-secondary: #555; --ai-light: #D0D0D0;
		} */
		body { color: #000; color: var(--ai-primary, #000); background-color: #fff; background-color: var(--ai-bg, #fff); }
		.navbar, footer { color: #555; color: var(--ai-primary-alt, #555); background-color: #f8f8f8; background-color: var(--ai-bg-alt, #f8f8f8); }
		.navbar a:not(.btn), .navbar a:before, .navbar span, footer a:not(.btn) { color: #555 !important; color: var(--ai-primary-alt, #555) !important; }
		.content { margin: 0 5% } .catalog-stage-image { margin: 0 -5.55% }
		.sm { display: block } .sm:before { font: normal normal normal 14px/1 FontAwesome; padding: 0 0.2em; font-size: 225% }
		.facebook:before { content: "\f082" } .twitter:before { content: "\f081" } .instagram:before { content: "\f16d" } .youtube:before { content: "\f167" }

	@yield('aimeos_styles')

				@if (Auth::guest())
					Login
				@else

						Account

							Profile
							{{csrf_field()}}Logout

				@endif

			@yield('aimeos_head')

		@yield('aimeos_stage')
		@yield('aimeos_nav')
		@yield('aimeos_body')
		@yield('aimeos_aside')
		@yield('content')

					LEGALTerms & ConditionsPrivacy NoticeImprint
					ABOUT USContact usCompany

				FacebookTwitterInstagramYoutube

	@yield('aimeos_scripts')

```

Afterwards, you should clear the Laravel cache files. Otherwise, you might get an exception due to old cached data.

`php artisan cache:clear`

To reference images correctly, you have to adapt your `.env` file and set the `APP_URL`to your real URL, e.g.

`APP_URL=http://127.0.0.1:8000`

**Caution:** Make sure, Laravel uses the `file` session driver in your `.env` file! Otherwise, the shopping basket content won't get stored correctly!

`SESSION_DRIVER=file`

Then, you should be able to call the catalog list page in your browser. For a quick start, you can use the integrated web server that is available since PHP 5.4. Simply execute this command in the base directory of your application:

`php artisan serve`

Point your browser to the list page of the shop using:

**Note:** Integrating the Aimeos package adds some routes like `/shop` or `/admin` to your Laravel installation but the **home page stays untouched!** If you want to add Aimeos to the home page as well, replace the route for "/" in `./routes/web.php` by this line:

```
Route::group(['middleware' => ['web']], function () {
	Route::get('/', '\Aimeos\Shop\Controller\CatalogController@homeAction')->name('aimeos_home');
});
```

For multi-vendor setups, read the article about [multiple shops](https://aimeos.org/docs/latest/laravel/customize/#multiple-shops).

This will display the Aimeos catalog home component on the home page you you get a nice looking shop home page. The `/shop` page will look like:

[![Aimeos frontend](https://camo.githubusercontent.com/e002239787bbba95d8c7a3d7cd728cf54b9ec91d2aea7c119968f6e47f587f2c/68747470733a2f2f61696d656f732e6f72672f66696c6561646d696e2f61696d656f732e6f72672f696d616765732f61696d656f732d66726f6e74656e642e6a70673f323032312e3037)](http://127.0.0.1:8000/index.php/shop)

Admin
-----

[](#admin)

To use the admin interface, you have to set up Laravel authentication first:

### Laravel 8

[](#laravel-8)

```
composer require laravel/jetstream
php artisan jetstream:install livewire
npm install && npm run dev

```

For more information, please follow the Laravel documentation:

- [Laravel 8.x](https://laravel.com/docs/8.x/authentication)

### Laravel 7

[](#laravel-7)

```
composer require laravel/ui:^2.0
php artisan ui vue --auth
npm install && npm run dev

```

For more information, please follow the Laravel documentation:

- [Laravel 7.x](https://laravel.com/docs/7.x/authentication)

### Laravel 6

[](#laravel-6)

```
composer require laravel/ui:^1.0
php artisan ui vue --auth
npm install && npm run dev

```

For more information, please follow the Laravel documentation:

- [Laravel 6.x](https://laravel.com/docs/6.x/authentication)

### Create account

[](#create-account)

Test if your authentication setup works before you continue. Create an admin account for your Laravel application so you will be able to log into the Aimeos admin interface:

`php artisan aimeos:account --super `

The e-mail address is the user name for login and the account will work for the frontend too. To protect the new account, the command will ask you for a password. The same command can create limited accounts by using "--admin", "--editor" or "--api" instead of "--super" (access to everything).

### Configure authentication

[](#configure-authentication)

As a last step, you need to extend the `boot()` method of your `App\Providers\AuthServiceProvider` class and add the lines to define how authorization for "admin" is checked in `app/Providers/AuthServiceProvider.php`:

```
    public function boot()
    {
        // Keep the lines before

        Gate::define('admin', function($user, $class, $roles) {
            if( isset( $user->superuser ) && $user->superuser ) {
                return true;
            }
            return app( '\Aimeos\Shop\Base\Support' )->checkUserGroup( $user, $roles );
        });
    }
```

### Test

[](#test)

If your `./public` directory isn't writable by your web server, you have to create these directories:

2021.07 and later:

```
mkdir public/aimeos public/vendor
chmod 777 public/aimeos public/vendor

```

2021.04 and before:

```
mkdir public/files public/preview public/uploads
chmod 777 public/files public/preview public/uploads

```

In a production environment, you should be more specific about the granted permissions! If you've still started the internal PHP web server (`php artisan serve`) you should now open this URL in your browser:

Enter the e-mail address and the password of the newly created user and press "Login". If you don't get redirected to the admin interface (that depends on the authentication code you've created according to the Laravel documentation), point your browser to the `/admin` URL again.

**Caution:** Make sure that you aren't already logged in as a non-admin user! In this case, login won't work because Laravel requires to log out first.

[![Aimeos backend](https://camo.githubusercontent.com/08606acd48678261825583f1fa833b9a515981f1c56e0633aa6b5572599648d4/68747470733a2f2f61696d656f732e6f72672f66696c6561646d696e2f61696d656f732e6f72672f696d616765732f61696d656f732d6261636b656e642e706e67)](http://127.0.0.1:8000/index.php/admin)

Hints
-----

[](#hints)

To simplify development, you should configure to use no content cache. You can do this in the `config/shop.php` file of your Laravel application by adding these lines at the bottom:

```
    'madmin' => array(
        'cache' => array(
            'manager' => array(
                'name' => 'None',
            ),
        ),
    ),
```

License
-------

[](#license)

The Aimeos Laravel package is licensed under the terms of the MIT license and is available for free.

Links
-----

[](#links)

- [Web site](https://aimeos.org/Laravel)
- [Documentation](https://aimeos.org/docs/Laravel)
- [Forum](https://aimeos.org/help/laravel-package-f18/)
- [Issue tracker](https://github.com/aimeos/aimeos-laravel/issues)
- [Composer packages](https://packagist.org/packages/aimeos/aimeos-laravel)
- [Source code](https://github.com/aimeos/aimeos-laravel)

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity81

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 97.4% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~17 days

Recently: every ~11 days

Total

135

Last Release

1713d ago

Major Versions

2020.10.6 → 2021.01.x-dev2021-01-12

2020.10.7 → 2021.04.32021-05-08

2019.10.x-dev → 2021.04.52021-06-21

2020.10.8 → 2021.07.12021-07-08

2020.10.9 → 2021.07.42021-07-27

PHP version history (3 changes)1.0.0PHP &gt;=5.3.0

1.1.0PHP &gt;=5.4.0

2016.01.1PHP &gt;=5.5.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/42b5e73e68edb128e42f762343d977574bade0f9eff70548188d631d5fa387a3?d=identicon)[thealonekhan](/maintainers/thealonekhan)

---

Top Contributors

[![aimeos](https://avatars.githubusercontent.com/u/8647429?v=4)](https://github.com/aimeos "aimeos (937 commits)")[![scrutinizer-auto-fixer](https://avatars.githubusercontent.com/u/6253494?v=4)](https://github.com/scrutinizer-auto-fixer "scrutinizer-auto-fixer (12 commits)")[![dev7ch](https://avatars.githubusercontent.com/u/15183757?v=4)](https://github.com/dev7ch "dev7ch (2 commits)")[![jbaron-mx](https://avatars.githubusercontent.com/u/11150471?v=4)](https://github.com/jbaron-mx "jbaron-mx (1 commits)")[![julien-terral](https://avatars.githubusercontent.com/u/27774317?v=4)](https://github.com/julien-terral "julien-terral (1 commits)")[![LukeMadhanga](https://avatars.githubusercontent.com/u/7837788?v=4)](https://github.com/LukeMadhanga "LukeMadhanga (1 commits)")[![msajjid](https://avatars.githubusercontent.com/u/3851391?v=4)](https://github.com/msajjid "msajjid (1 commits)")[![sebastien-vedrine](https://avatars.githubusercontent.com/u/33923690?v=4)](https://github.com/sebastien-vedrine "sebastien-vedrine (1 commits)")[![sixXnine](https://avatars.githubusercontent.com/u/40624628?v=4)](https://github.com/sixXnine "sixXnine (1 commits)")[![SunRise26](https://avatars.githubusercontent.com/u/33545404?v=4)](https://github.com/SunRise26 "SunRise26 (1 commits)")[![WLsupport](https://avatars.githubusercontent.com/u/65345103?v=4)](https://github.com/WLsupport "WLsupport (1 commits)")[![xerc](https://avatars.githubusercontent.com/u/1372590?v=4)](https://github.com/xerc "xerc (1 commits)")[![hootlex](https://avatars.githubusercontent.com/u/6147968?v=4)](https://github.com/hootlex "hootlex (1 commits)")[![zherdev-artem](https://avatars.githubusercontent.com/u/4329958?v=4)](https://github.com/zherdev-artem "zherdev-artem (1 commits)")

---

Tags

laravelshopecommercee-commerceb2baimeosportalmarket place

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/thealonekhan-aimeos-laravel/health.svg)

```
[![Health](https://phpackages.com/badges/thealonekhan-aimeos-laravel/health.svg)](https://phpackages.com/packages/thealonekhan-aimeos-laravel)
```

###  Alternatives

[aimeos/aimeos-laravel

Cloud native, API first Laravel eCommerce package with integrated AI for ultra-fast online shops, marketplaces and complex B2B projects

8.6k214.7k3](/packages/aimeos-aimeos-laravel)[aimeos/aimeos-typo3

Professional, full-featured and high performance TYPO3 e-commerce extension for online shops and complex B2B projects

1.5k91.2k4](/packages/aimeos-aimeos-typo3)[aimeos/aimeos-symfony

Professional, full-featured and high performance Symfony e-commerce bundle for online shops and complex B2B projects

1.4k4.3k](/packages/aimeos-aimeos-symfony)[aimeos/aimeos-core

Full-featured e-commerce components for high performance online shops

4.5k346.9k48](/packages/aimeos-aimeos-core)[aimeos/ai-cms-grapesjs

Aimeos GrapesJS CMS extension

970106.9k1](/packages/aimeos-ai-cms-grapesjs)[aimeos/aimeos

Aimeos ecommerce and shop system

5.3k108.1k](/packages/aimeos-aimeos)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
