Aimeos 2023.10 LTS release
The latest 2023.10 release of the Aimeos e-commerce platform for Laravel and TYPO3 is now available! Developers will especially appreciate the 2023 version as it includes many simplifications and natively supports scalable cloud infrastructure like Kubernetes. The most notable updates in 2023 are:
- Laravel 10 support
- TYPO3 12 compatibility
- Native Kubernetes/serverless capabilities
- Simplified manager creation
- Merged order and order base data
- Stored basket admin panel
- Database translations for type names
- VueJS and GraphQL in admin backend
Laravel 10 support
With the February 2023 Laravel 10 release, Aimeos is now fully compatible and since 2023.04, the headless and full stack Aimeos distributions are built on Laravel 10. These provide ready-to-use Laravel 10 apps with Aimeos integrated in less than 5 minutes, including authentication for both headless and full stack setups.
TYPO3 12 compatibility
Aimeos 2023.x is also fully compatible with the April TYPO3 12.4 release. TYPO3 v12 introduced many changes compared to v11, especially removing a lot of deprecated code. This made supporting both v11 and v12 in Aimeos 2023.x very difficult, so v12 is now the only supported TYPO3 version. Therefore, to upgrade Aimeos after 2 years of free support or to use new 2023.x features, you must also upgrade to the latest TYPO3 v12.
Native Kubernetes/serverless support
We're excited to announce Aimeos 2023+ as the first cloud-native e-commerce solution for Laravel. Everything including file imports can now be distributed across any cloud environment like Kubernetes, AWS, Google Cloud, Azure or serverless. Aimeos Laravel has always been cloud-ready, with images/CSS/JS in cloud storage, but file imports were limited to local filesystems. Now you can store imported product, category, user etc files on any remote server in CSV or XML format.
We've also migrated our entire infrastructure including sites, demos and private package repo to a private Kubernetes cloud this year.
Simplified manager creation
Extending existing managers was simple but creating new managers for custom domains or extending core domains required lots of boilerplate code before. Since 2023.10, creating new managers is as easy as extending existing ones.
First, create a schema migration task as usual:
// Migration task code
Then create the manager for the new "test" domain:
// Manager code
That's it! You can now use the new manager like any core Aimeos manager:
// Manager usage
See the docs for more on creating managers.
Merged order and order base
The biggest architectural change since the beginning is simplifying orders by merging the separate order and order base tables/managers/items. The idea was to allow multiple invoices/refunds per stored order base (basket) but this wasn't practical and complicated orders. Now all order data is stored in one record.
This isn't backwards compatible in the JSON:API! Apps using the API no longer need the order endpoint to create orders since the basket endpoint handles that already. Basket property names also changed, removing ".base".
The JSON:API has been backwards compatible since 2017 but we want to stabilize v2 for 5-10 years.
Stored basket admin panel
Customer baskets are now stored in the database for a period and the admin backend has a new "Sales > Baskets" panel. Admins can view saved and abandoned baskets and send emails via 3rd party apps to remind about abandoned carts.
Database translations for type names
Previously, translations for attribute types were limited to static Gettext files or config. Only developers could update them and delivering updates from ERPs was difficult.
Now, type translations are stored in the database with the types and can be edited in the admin backend and easily updated by ERPs. This is available for all types, not just attributes.
VueJS and GraphQL in backend
Multiple admin panels have been rewritten with VueJS components for improved code quality, moving away from jQuery. Any Vue 2 components without Vue 3 support were replaced by better maintained ones like Vue Multiselect for select boxes. This will enable upgrading to Vue 3 in future releases.
Where possible, requests to the JSON admin API have also been replaced with the new GraphQL API. We'll continue extending the GraphQL API and phasing out the JSON admin API. In 2024.x the JSON admin API will be deprecated but the frontend JSON:API is here to stay as the sole frontend integration method.
Leave a comment
Your email address will not be published. Required fields are marked with *