Current product recommender systems only allow users to select from off the shelf products. However if they wish to mix and match components to create customized products, current recommendation systems do not support that. For instance based on user requirements current systems may suggest different desktop computers, however they cannot suggest configurations that allow users to add a different memory card or additional hard disk. Our goal in this project is to expand the way recommendation systems work so that they can suggest the products along with their customizable components to customers and give them a greater choice in shopping. As a part of this project new models to represent this problem and novel and efficient solutions for the same are being developed.