I've been toying with a concept for a light eCommerce platform for developers. I have a solid background in software development for online stores, and I've worked on big, complex and messy platforms. I feel that the world could use a fresh tool.
What is it?
A light eCommerce framework with a modern approach and a focus on extensibility. A small dev team should be able to deploy something in Day 1, and feel empowered to extend it in Day 2 and beyond.
I would love to see a platform that implements an API-only design, with support for a microservices architecture. Go would be a perfect fit: it's powerful but simple in its concepts, and its easy enough to deploy anywhere really fast. Go's latest support for modules makes it a really good candidate for extensible projects.
For the front-end, Vue JS seems like a no-brainer. It has a fantastic learning curve, and does away with a lot of complexity, without really tying one hand behind your back. I'm sure people have their preference for CSS and component libraries, state management, etc. The platform would be batteries-included: you start with a simple, generic approach based on best practices and community conventions, and be able to extend and iterate on that.
On one hand, this approach would fit well with UX-driven stores. The ability to have a solid API behind a well-crafted Vue boilerplate would encourage creative solutions on the frontend.
On the other hand, websites with a store component would benefit from tighter integration, while still rocking a custom frontend. Online courseware and subscription-based items come to mind here.
And all in all, the platform could be delivered on modern, cloud-native infrastructure, which is still a rare thing today, even with the rising of containers and Kubernetes.
As of today, I am not aware of a modern, API-driven store platform that focuses on extensibility. ECommerce is a lot of work, but I fully expect to see new tools develop in this space. Meanwhile, I'm glad I got this idea out of my head.
Is there anyone out there who needs this? :)