1. A computer-implemented method comprising automatically generating code based on receiving a selection of at least a first service and a widget engine via a web-based widget composition platform, the code, when invoked by the selected widget engine, implementing a widget that is operable to communicate with the first service.