Why we decide to build another open-source PIM Solution

Product Information Management — until a few years ago this term raised a few eyebrows among many e-commerce managers. During my 10-year experience in implementing e-commerce systems I saw how the requirements and market needs in this area were changing. Therefore, at Strix we decided to make the contribution in the development of the whole industry. Here is a short story about key factors that drove us to create Ergonode.

Marcin Piwowarczyk
ergonode
4 min readMay 14, 2019

--

1. We love open-source

RiverSand, InRiver, Akeneo, Pimcore, SalesLayer, Catsy, Salsify, Pimberly… well, it’s true — there are dozens of Product Information Management systems on the market. Most of them, however, are closed source software that are sold in the model of dedicated implementation or SaaS. Only two of them provide open source code. Since Strix has been founded, the idea of open source is very close to us (we have been working with Magento for over 10 years), and we cannot imagine any other way than creating a system that will be available to everyone. A system that could be developed by anyone with required knowledge and a good will, so anyone can be a co-creator.

2. Out-of-the-box system ready for 200k+ product references

When you have to manage hundreds of thousands of products, you are able to deal with it effectively using available common tools. But when it comes to multiple language, locations, many new sales channels and data sources — the whole process becomes more complicated.

From the very beginning, we set ourselves the goal to build the system that will seamlessly support hundreds of thousands of products, where you won’t have to struggle for performance on a larger scale, while at the same time it will be easy for developers to expand.

3. Maximum management satisfaction for users

In many cases, internal systems are focused on features not design and usability. We decided that Ergonode would not be such a system. It will be easy to work with truly ergonomic solution.

We’ve set clear mission of Ergonode, as the most intuitive product management platform in the world. Because design matters.

The key areas we focused on when starting our work with Ergonode:

Grid Management

Do you like Excel? Probably yes. Then why not transfer its best features to a product management system? So that from the level of grid-listing you can effectively edit, delete and enrich product-content. Plus, without worrying about constant data refreshing problems, or performance. Literally like in Excel. Only better.

Drag&Drop system on grid management
Efficient filtering on grid

Design Beautiful Product Pages

A PIM’s product page should make amazing first-impressions, right? Why not give users full control over how they want to work with product data? This approach formed the foundation of our thinking about the presentation of product-content. Let’s give power back to the users. They know the best how to manage their products. But with beautiful design in mind.

Truly effective translations management

So you have five, ten or twenty five markets to which the products are to be delivered. How to manage them effectively? We assumed that it has to be simple, both at the attribute level and at the product or channel level. Why not use artificial intelligence to deliver translations?

One of possibilities is managing translations on grid system

4. Be a developer friendly

From the very beginning, Ergonode was designed to provide maximum satisfaction not only for product and content managers, but especially for developers.

The system architecture was built entirely based on Domain Driven Design approach using Command Query Responsibility Segregation (CQRS) and Event Sourcing.

Thanks to this, we have gained unprecedented flexibility in managing every element of the system from the moment of its creation and a trouble-free division/exchange of databases in individual areas of the system.

The system consists of two main independent Backend and Frontend applications, which communicate with each other through the RestAPI interface.

On the front side we’ve used headless approach with Vue.js application. Thanks to that we have gained an increase in the performance and speed of the application, as well as the readiness to fully adapt the system as a Desktop Progressive Web App.

Backend technologies

  • PHP 7.2
  • Symfony 4.2
  • Postgres 9.6 (uuid-ossp, ltree)
  • RabbitMQ
  • Redis
  • Elasticsearch
  • Nginx (possible Apache)
  • MongoDB (optional)

Frontend technologies

  • Vue.js
  • Nuxt.js
  • Node.js
  • SASS
  • Axios
  • BEM (CSS)
  • ESLint (AirBnB standard)

Tests

  • Phpunit
  • Behat (API)

Domain Driven Design Approach

  • CQRS
  • ES
  • SAGA
  • EVENT BUS

Ready? Find out more about Ergonode

If you have any questions or ideas feel free to join our slack: https://ergonode.slack.com/ via invitation link.

Check out our repository on GitHub: https://github.com/ergonode

Our website: www.ergonode.com

FB: www.facebook.com/ergonode

--

--

Marcin Piwowarczyk
ergonode

UX & Commerce geek, experienced with delivering large digital commerce projects.