Skip to main content
  1. All Posts/

aimeos-headless

eCommerce JavaScript

Aimeos headless distribution

⭐ Star us on GitHub — it motivates a lot!
Aimeos is THE ultra-fast, cloud-native and
API-first headless ecommerce for Laravel! You can adapt, extend, overwrite
and customize anything to your needs.

Features

Aimeos is a full-featured e-commerce package:

  • JSON REST API based on jsonapi.org
  • GraphQL API for administration
  • Perfect fit for AWS, Google, Azure and Kubernetes based clouds
  • Multi vendor, multi channel and multi warehouse
  • From one to 1,000,000,000+ items
  • Extremly fast down to 20ms
  • For multi-tentant e-commerce SaaS solutions with unlimited vendors
  • Bundles, vouchers, virtual, configurable, custom and event products
  • Subscriptions with recurring payments
  • Block/tier pricing out of the box
  • Extension for customer/group based prices
  • Discount and voucher support
  • Flexible basket rule system
  • Full-featured admin backend
  • Beautiful admin dashboard
  • Configurable product data sets
  • Completly modular structure
  • Extremely configurable and extensible
  • Extension for market places with millions of vendors
  • Translated to 30+ languages
  • Full RTL support
  • AI-based text translation
  • Secure and reviewed implementation
  • High quality source code

… and more Aimeos features
Supported languages:












   












   



   





Check out the demos:

Alternatives

Integrate into existing applications

You already have an existing Laravel application and want to add a shop to your
web site? Install the Aimeos composer package for Laravel and add e-commerce to
your existing application in minutes:
⭐ Aimeos Laravel package

Full shop application

If you want to set up a new application or test Aimeos, we recommend the Aimeos
shop distribution. It contains everything for a quick start and you will get a
fully working online shop in less than 5 minutes:
⭐ Aimeos shop distribution

Table of content

Requirements

The Aimeos headless distribution requires:

  • AWS, Google, Azure or Kubernetes cloud, Linux/Unix, WAMP/XAMP or MacOS environment
  • PHP >= 8.0.10
  • MySQL >= 5.7.8, MariaDB >= 10.2.2, PostgreSQL 9.6+, SQL Server 2019+
  • Web server (Apache, Nginx or integrated PHP web server for testing)

If required PHP extensions are missing, composer will tell you about the missing
dependencies.
If you want to upgrade between major versions, please have a look into the
upgrade guide!

Installation

To install the Aimeos shop application, you need composer 2.1+.
On the CLI, execute this command for a complete installation including a working setup:

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

You will be asked for the parameters of your database and mail server as well as an
e-mail and password used for creating the administration account.
In a local environment, you can use the integrated PHP web server to test your new Aimeos
installation. Simply execute the following command to start the web server:

cd headless
php artisan serve

Note: In an hosting environment, the document root of your virtual host must point to
the /…/headless/public/ directory and you have to change the APP_URL setting in your .env
file to your domain without port, e.g.:

APP_URL=http://myhostingdomain.com

JSON REST API

After the installation, you can test the Aimeos JSON REST API by calling the URL of your
VHost in your browser. If you use the integrated PHP web server, you should browse
this URL: http://127.0.0.1:8000/jsonapi
Learn how to use the JSON REST API

Authenticate

To authenticate using e-mail and password, send a POST request:

curl -X POST "http://127.0.0.1:8000/api/login?email=me@localhost&password=test"

If the authentication was successful, the API will return with a response like this:

{"access_token":"eyJ0eXAiOiJKV...","token_type":"bearer","expires_in":3600}

Use this access token in all further requests as HTTP header:

curl -X POST "http://127.0.0.1:8000/api/me" -H "Authorization: Bearer eyJ0eXAiOiJKV..."

Backend

The Aimeos administration interface will be available at /admin in your VHost. When using
the integrated PHP web server, call this URL: http://127.0.0.1:8000/admin

Cloud filesystems

To use cloud storage like AWS S3 compatible object storages, adapt the resource/fs sections
in the ./config/shop.php file and configure the filesystem like this:

'fs' => [
	'adapter' => 'FlyAwsS3',
	'credentials' => [
		'key' => 'your-key',
		'secret' => 'your-secret',
	],
	'region' => 'your-region',
	'version' => 'latest|api-version',
	'bucket' => 'your-bucket-name',
	'prefix' => 'your-prefix', // optional
],

For Azure Blob storage use:

'fs' => [
	'adapter' => 'FlyAzure',
	'endpoint' => 'DefaultEndpointsProtocol=https;AccountName=your-account;AccountKey=your-api-key',
	'container' => 'your-container',
	'prefix' => 'your-prefix', // optional
],

And for Google Cloud storage:

'fs' => [
	'adapter' => 'FlyGoogleCloud',
	'keyFile' => json_decode(file_get_contents('/path/to/keyfile.json'), true), // alternative
	'keyFilePath' => '/path/to/keyfile.json', // alternative
	'projectId' => 'myProject', // alternative
	'prefix' => 'your-prefix' // optional
],

Customize

Laravel and the Aimeos headless ecommerce distribution are extremely flexible and highly customizable.
A lot of documentation for the Laravel framework and the
Aimeos ecommerce framework exists. If you have questions
about Aimeos, don’t hesitate to ask in our Aimeos forum.

License

The Aimeos shop system is licensed under the terms of the MIT and LGPLv3 license and
is available for free.

Links