Bugs: Somehow when we start the server UI, the server starts automatically, even if we don't push the "Start" button. I don't particularly mind this now, as it makes the debugging one click faster, but it is a bug and needs to be fixed. Low Priority. Sometimes the document list doesn't get updated on the client... I am not sure why this may be, as I cannot reproduce this one a stable basis. The client list in the chat panel looks ugly. It either takes up too much space, or too little. Fix it! In all the JLists in general, the text is stuck agains the left edge. Would be good to add a little margin there. Testing: Untested: NetTextDocumentReader.java - Jose (need client/server) Everything else, pretty much, too. Implementation: Implement network messages. (Andrew, Daniyar) + Implement the regular server message. (Maybe do the same abstraction as in netpaint - AbstractServerMessage with the children - GenericServerMessage, and ServerErrorMessage.) When I was writing the protocol, I thought we never used the regular server message in netpaint, and so exclueded it from the protocol. While writing the networking code, I remembered what it was I needed to use this generic message for, and I still need it here. Implement file IO. (Jose) -Implement Implement document structure. (Jose) Implement server functionality. (Vladimir) + Implement the framework for managing clients - adding, dropping. + Implement the Client class. + Need to add the document list to the client class when the document list class becomes available. + Implement the client list stuff. o Implement the chat functionality. o Implement the document handling functionality. o Implement Server settings with default values. + Still need to add here the defaults for the repository and the autosave delay. Implement server UI. (Vladimir) + Implement the interactive user list. o Implement the kick user button. Shared UI + Implement client list. Client UI: o Implement it so when the client receives a "duplicate username" message, it doesn't freak out and drop the connection... Miscellaneous: Fill in the package.html placeholder descriptions with real information.