{"id":19005487,"url":"https://github.com/anuja-rahul/socket-file-transfer","last_synced_at":"2026-06-23T15:31:11.058Z","repository":{"id":222703763,"uuid":"757468143","full_name":"anuja-rahul/socket-file-transfer","owner":"anuja-rahul","description":"Secure file transferring application based on python sockets with E2EE and hashing.","archived":false,"fork":false,"pushed_at":"2024-02-18T19:31:07.000Z","size":34,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-21T14:17:57.033Z","etag":null,"topics":["aes-encryption","client-server","hashing","learning-by-doing","oop","python3","singleton","sockets"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/anuja-rahul.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-14T14:59:35.000Z","updated_at":"2024-05-23T13:22:13.000Z","dependencies_parsed_at":"2024-02-18T19:46:08.779Z","dependency_job_id":null,"html_url":"https://github.com/anuja-rahul/socket-file-transfer","commit_stats":null,"previous_names":["anuja-rahul/socket-file-transfer"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/anuja-rahul/socket-file-transfer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anuja-rahul%2Fsocket-file-transfer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anuja-rahul%2Fsocket-file-transfer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anuja-rahul%2Fsocket-file-transfer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anuja-rahul%2Fsocket-file-transfer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/anuja-rahul","download_url":"https://codeload.github.com/anuja-rahul/socket-file-transfer/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/anuja-rahul%2Fsocket-file-transfer/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34696643,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-23T02:00:07.161Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aes-encryption","client-server","hashing","learning-by-doing","oop","python3","singleton","sockets"],"created_at":"2024-11-08T18:27:44.089Z","updated_at":"2026-06-23T15:31:11.038Z","avatar_url":"https://github.com/anuja-rahul.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"Beta tested on localhost (windows)  \nrecommended for sharing small files only  \ntransfer speeds can be slow considering this program isn't using any multi-threading.\n\n```\nreceive.py(server) must be running before send.py(client) to establish a connection.\nif not, it will most likely return a WinError-10061 (on windows).\n\nTo get started you need to have 2 directories called \"send\" and \"receive\"\non your working directory\n\nYou can either create them manually or you can call for an empty object \nfrom either SocketServer or SocketClient\nwhich will generate the required directories and test files.\n\nmake sure to remove any test objects before instantiating either\nthe working server or client objects because the singleton design will only allow \none instance/object  per class from both SocketServer and SocketClient.\n\nin case of an unknown error check your log file from (./logs)\nthey will most likely contain the type of the error, name of the method in which \nthe said error originated and the time of the error.\n```\n\n\n```python\n\"\"\"\nclient for sending the files\nsocket-file-transfer/send.py\n\"\"\"\n\nfrom socket_client import SocketClient\n\nsend_instance = SocketClient(key=b\"TestPassword1234\", nonce=b\"TestNonce1234567\", send=True, file=\"filename.extension\")\nsend_instance.send_data(port=8999)\n\n# param: nonce,key (both key and nonce will only accept exactly 16 characters of bytes)\n# param: send (send must be True before calling the send_data() method)\n# param: file (file must be the name(with extension) of the file in the send folder which you intend to send.)\n# param: port (default value is 8999, but can be changed depending on user preference)\n```\n```python\n\"\"\"\nserver for receiving the files\nsocket-file-transfer/receive.py\n\"\"\"\n\nfrom socket_server import SocketServer\n\nreceive_instance = SocketServer(key=b\"TestPassword1234\", nonce=b\"TestNonce1234567\", receive=True, file=\"filename.extension\")\nreceive_instance.receive_data(port=8999)\n\n# param: nonce,key (both key and nonce will only accept exactly 16 characters of bytes)\n# param: receive (send must be True before calling the receive_data() method)\n# param: file (file must be the name(with extension) of the file which you intend to receive from the client.)\n# param: port (default value is 8999, but can be changed depending on user preference)\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanuja-rahul%2Fsocket-file-transfer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanuja-rahul%2Fsocket-file-transfer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanuja-rahul%2Fsocket-file-transfer/lists"}