In a decentralised and distributed environment, collaboration requiring the sharing and building of applications is a complex task. For this reason, we propose LaCOLLA, a fully decentralised peer-to-peer middleware that aims to simplify the process of incorporating collaborative functionalities into any application. It provides applications with certain essential collaborative functionalities: dissemination of information, storage, presence and transparency of location, management of members and groups, and execution of tasks. A distinguishing feature of LaCOLLA is that participants provide resources for the benefit of the group. This enables collaboration activities to take place in a collective environment using only the resources provided by participants in the collaboration (self-sufficiency). In this paper we present and evaluate the architecture of LaCOLLA, its API, and key aspects of its implementation.