Designing the architecture and data model of an MVP service similar to Pinterest
livecode
Task condition
It is necessary to create a minimum viable product (MVP) of a service similar to Pinterest, covering three typical user scenarios.
1️⃣ The user launches the application, navigates to the category tree, selects a final category, then can set several attributes with their values, add an image, and press the 'Send' button. After confirmation, the image is sent to the backend, where it is saved in the selected category along with the specified attributes and their values.
2️⃣ The user opens the application, selects a category, specifies a set of attributes and their values, and presses 'Search'. The system should return a set of images that match the specified attribute combinations.
3️⃣ The administrator has the ability to manage and modify the category structure, attribute sets, and their possible values.
It is required to select a technology stack, design the overall architecture of the solution, and describe the data structure necessary for implementing the specified scenarios.