1. A computer-implemented method comprising: transmitting instructions to a computing device to display a user interface of a web-based widget composition platform; receiving, via the user interface, first user input comprising a selection of at least a first service and a second service; receiving, via the user interface, second user input comprising a selection of a widget engine; automatically generating code based on the first service, the second service and the widget engine, the code, when invoked by the widget engine, providing a widget that includes a first service window associated with the first service and a second service window associated with the second service, and that is operable to communicate with the first service and the second service to connect an output of the first service to an input of the second service such that data presented in the second service window is contextualized based upon a user-selection of one of a plurality of data items displayed in the first service window; and creating a service mediator instance based on receiving the selection, the service mediator instance comprising: a service requestor component operable to: gather input parameters, transmit a service call to the first service based on the input parameters, and transmit raw data results of the service call to the service mediator instance; an interpreter component operable to: process the raw data results into an interpreted S ERVICE D ATA M ODEL object, and transmit the S ERVICE D ATA M ODEL object to the service mediator instance; and a renderer component operable to render a visual representation of data in the S ERVICE D ATA M ODEL object.