Aimeos Laravel package
Aimeos is THE professional, full-featured and ultra fast e-commerce package for Laravel 5 and 6! You can install it in your existing Laravel application within 5 minutes and can adapt, extend, overwrite and customize anything to your needs.
Table of content
Supported versions
This document is for the Aimeos Laravel package 2020.10 and later.
- Stable release: 2021.04 (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!
Basic application
Full shop application
If you want to set up a new application or test Aimeos, we recommend the Aimeos shop application. 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:
Shop package only
The Aimeos Laravel online shop package is a composer based library. It can be installed easiest by using Composer 2.1+ 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.04
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 and their specific configuration. Supported are:
- MySQL, MariaDB (fully)
- PostgreSQL (fully)
- SQL Server (fully)
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.04",
...
},
"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
To see all components and get everything working, you also need to create your main Blade template in resources/views/app.blade.php
. This is a working example using the Twitter bootstrap CSS framework: