After spending 3 weeks on the customization of a large-scale e-commerce application, I ultimately decided to move away from Strapi permanently.
During this process, I encountered numerous stability and scalability issues, a few of which I reported on GitHub. Additionally, the lack of basic transaction rollback capabilities was a significant limitation for my use case. Furthermore, the exception handling in the lifecycle hooks was not an effective solution and often resulted in a “400” error. Moreover, even when adding exceptions in the lifecycle hooks, the data within the component model still persisted in the database, which was the main reason for the fallback.
Furthermore, the product quality and community support were not up to par for a 31 million dollar funded solution. Strapi has many unknown issues and the future seems uncertain for developers who are looking to migrate from v3 to v4.
Even after giving Strapi another chance after two years, I remain disappointed and I must conclude that Strapi is not a suitable tool for large-scale e-commerce projects and would not recommend it for similar use cases.
Side note: Different project has different demand and for my usecase , Strapi wasn’t a good option. I suggest developer who start using Strapi should understand what the project really needs and make sure you understand the use case before choose Strapi.