[{"title":"( 44 个子文件 69KB ) Websocket-Chatroom:使用Python Websockets的基于Websocket的内存中聊天室-源码","children":[{"title":"Websocket-Chatroom-master","children":[{"title":"Images","children":[{"title":"screenshot.JPG <span style='color:#111;'> 72.47KB </span>","children":null,"spread":false}],"spread":true},{"title":"src","children":[{"title":"client","children":[{"title":"constants","children":[{"title":"prod_constants.js <span style='color:#111;'> 62B </span>","children":null,"spread":false},{"title":"local_constants.js <span style='color:#111;'> 33B </span>","children":null,"spread":false}],"spread":true},{"title":"local_default.conf <span style='color:#111;'> 477B </span>","children":null,"spread":false},{"title":"Dockerfile <span style='color:#111;'> 579B </span>","children":null,"spread":false},{"title":"static","children":[{"title":"index.js <span style='color:#111;'> 2.05KB </span>","children":null,"spread":false},{"title":"index.html <span style='color:#111;'> 671B </span>","children":null,"spread":false},{"title":"index.css <span style='color:#111;'> 983B </span>","children":null,"spread":false}],"spread":true},{"title":"Makefile <span style='color:#111;'> 2.49KB </span>","children":null,"spread":false},{"title":"prod_default.conf <span style='color:#111;'> 475B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 3.94KB </span>","children":null,"spread":false}],"spread":true},{"title":"server","children":[{"title":"server","children":[{"title":"server.py <span style='color:#111;'> 2.53KB </span>","children":null,"spread":false},{"title":"app.py <span style='color:#111;'> 882B </span>","children":null,"spread":false},{"title":"utils.py <span style='color:#111;'> 1.66KB </span>","children":null,"spread":false},{"title":"user.py <span style='color:#111;'> 827B </span>","children":null,"spread":false},{"title":"command_handler.py <span style='color:#111;'> 7.55KB </span>","children":null,"spread":false},{"title":"chatroom.py <span style='color:#111;'> 7.99KB </span>","children":null,"spread":false},{"title":"response.py <span style='color:#111;'> 826B </span>","children":null,"spread":false},{"title":"config_manager.py <span style='color:#111;'> 1.86KB </span>","children":null,"spread":false},{"title":"Data","children":[{"title":"animals.txt <span style='color:#111;'> 1.48KB </span>","children":null,"spread":false},{"title":"adjectives.txt <span style='color:#111;'> 10.59KB </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":"config","children":[{"title":"local_config","children":[{"title":"server.yaml <span style='color:#111;'> 74B </span>","children":null,"spread":false},{"title":"chat.yaml <span style='color:#111;'> 535B </span>","children":null,"spread":false}],"spread":true},{"title":"test_config","children":[{"title":"server.yaml <span style='color:#111;'> 73B </span>","children":null,"spread":false},{"title":"chat.yaml <span style='color:#111;'> 540B </span>","children":null,"spread":false}],"spread":true},{"title":"prod_config","children":[{"title":"server.yaml <span style='color:#111;'> 73B </span>","children":null,"spread":false},{"title":"chat.yaml <span style='color:#111;'> 524B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"Pipfile <span style='color:#111;'> 197B </span>","children":null,"spread":false},{"title":"Dockerfile <span style='color:#111;'> 507B </span>","children":null,"spread":false},{"title":"tests","children":[{"title":"test_helper.py <span style='color:#111;'> 176B </span>","children":null,"spread":false},{"title":"test_user.py <span style='color:#111;'> 633B </span>","children":null,"spread":false},{"title":"mock","children":[{"title":"mockwebsocketclient.py <span style='color:#111;'> 541B </span>","children":null,"spread":false}],"spread":true},{"title":"test_server.py <span style='color:#111;'> 1.45KB </span>","children":null,"spread":false},{"title":"test_response.py <span style='color:#111;'> 724B </span>","children":null,"spread":false},{"title":"test_command_handler.py <span style='color:#111;'> 3.19KB </span>","children":null,"spread":false},{"title":"test_chatroom.py <span style='color:#111;'> 4.18KB </span>","children":null,"spread":false},{"title":"test_config_manager.py <span style='color:#111;'> 1.10KB </span>","children":null,"spread":false}],"spread":true},{"title":"Pipfile.lock <span style='color:#111;'> 4.99KB </span>","children":null,"spread":false},{"title":"Makefile <span style='color:#111;'> 2.39KB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 4.45KB </span>","children":null,"spread":false}],"spread":true},{"title":".vscode","children":[{"title":"settings.json <span style='color:#111;'> 349B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":".gitignore <span style='color:#111;'> 1.68KB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 2.09KB </span>","children":null,"spread":false},{"title":"LICENSE.txt <span style='color:#111;'> 1.04KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}]