Communities of practice environment

Methods and apparatus, including systems and computer program products, for implementing environments that provide user groups with the ability to post, discuss, and manage group content, and the ability to organize and make group decisions, based on the content of documents. One method includes managing documents according to a respective document state for each document in the environment. The possible document states include a submitted state, a voting state, an approved state, and a not approved state. A group member submitting a document to the group places the document in the submitted state. When the group coordinator enables voting on the document, it moves to the voting state. If the members approve the document, it moves from the voting to the approved state; and otherwise, the document moves from the voting to the not approved state.