Please fork this repo and develop your server based on the protocol described in pta.pdf file (in portuguese). Before coding, I suggest you carefully read the document spec and understand the protocol. Experiment the protocol, using paper and pencil, drawing examples of protocol usage.
Please develop your server code in the directory pta-server. The user list that must be accepted by the protocol must be read from the pta-server/users.txt file. The files to be served by your server are in the pta-server/files directory. Please don't change these files and directories.
Your server code will be evaluated through an automatic testing tool. This way, in order to test your code you can use the pta-client.py file. This file makes some tests but it is not an extensive test. So, keep in mind that the actual evaluation will test other aspects of your protocol implementation.
You could use any programming language. But you must provide instructions in order to successfully run your code. Describe all stuff about libraries, interpreters, versions and so on. After finishing development, you must share the link of your github repo in the evaluation environment (sigaa.ufpa.br).