With the recent advances in the communication technology and popularity of the Internet, a large number of distributed web-based applications are being developed. To ease the development of such applications, software support to facilitate coordination and communication is needed. This paper describes an object-oriented system that provides software support for different aspects of application development, namely session management, coordination and infor-mation exchange. In particular, the paper proposes a coordination service as a building block for developing distributed applications. A set of processes or agents that need to coordinate their actions can supply a coordination specification to this service. The service then performs the appropriate lower level communication to coordinate the actions of the processes as per the specification. We believe that such a service should be available as part of the basic infrastructure for developing web-based distributed applications. Our framework has been implemented in JAVA and incorporates the notion of role types to accommodate application development in an open system.