Database
[{"_id":"eatete","competition":{"_id":"eatete","name":"Some competition name"},"members":[{"_id":"eatete","name":"Saad"},{"_id":"eatete","name":"Saad2"}],"leader":{"name":"Saad","institute":{"_id":"eatete","name":"Some institute name"}}}]
Query
db.collection.aggregate([{"$unwind":{path:"$members",includeArrayIndex:"i"}},{"$group":{"_id":"$_id","competition":{$first:"$competition.name"},"leadername":{$first:"$leader.name"},"institute":{$first:"$leader.institute.name"},"data":{"$push":{"k":{"$concat":["members",{"$toLower":"$i"},"name"]},"v":"$members.name"}}}},{"$replaceRoot":{"newRoot":{"$mergeObjects":["$$ROOT",{"$arrayToObject":"$data"}]}}},{"$project":{"data":0}}])