SMPL is a software architecture framework aimed at supporting rich synchronous and asynchronous collaboration among people across the Internet. The architecture allows different groups of users to collaborate through a wide range software, hardware, and data platforms. Applications powered by SMPL will not only be able to share processes and data, but also to harvest efficiently the information generated by the interaction of their users. SMPL presents a hybrid topology that simplifies the creation of new functionalities by facilitating the aggregation of different Internet services across a wide range of computing devices, in what is termed "functionality composition."