Work has already gone underway to making 4.0 the best of all releases. CoCart has been broken down into 5 modules which are combined using Composer and packaged together before a release is made.
The reason for this change is to…
- First, better manage the code base by group.
- Second is to make it easier to provide a code reference (later on) on just the areas that developers will be allowed to extend or customize CoCart for. (This is much like the WordPress Code Reference)
- Third is to make development easier for future add-ons and support for WooCommerce extensions. So easier integration both internal and outside.
- Fourth to hopefully improve performance of CoCart overall and prepare support for future PHP 8 releases when WordPress and WooCommerce have caught up.
- And finally is to allow for a better white label mode but more on that in the future.
The modules are the following:
- CoCart Admin – Contains the administrator features for WordPress dashboard, setup wizard, notices, WooCommerce Notes etc.
- CoCart Products API – Contains the Products API in public view with valuable information for UI/UX developers.
- CoCart Compatibility – Provides compatibility for certain plugins and WooCommerce extensions.
- CoCart Third Party – Provides support for specific third-party plugins, third-party WooCommerce extensions and web hosts.
- CoCart Session API – Contains the Session API for administrators to have the ability to view the cart sessions.
Each of these modules are available on GitHub so tracking changes for each will make things a little bit easier and allow for other developers to contribute specifically for those modules such as compatibility for example.
CoCart 4.0 is now using Namespaces which will also help with developments to keeping things organized. Once the code restructuring of 4.0 is stable, work on new improvements will go into production.
This will be a big step in taking CoCart further into supporting WooCommerce headless.
You can track development of 4.0 on the “dev” branch on the main CoCart GitHub repository.
I thank you for the feedback and support you have given me and keep providing on this amazing project and I look forward to sharing more soon.