Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

simpleshare

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

simpleshare

A local file sharing utility written in Python. Uses multicast UDP to share the list of files, and TCP to transfer the files themselves.

  • 1.3
  • PyPI
  • Socket score

Maintainers
1

simpleshare

A local file sharing utility written in Python. Uses multicast UDP to share the list of files, and TCP to transfer the files themselves.

Installation:

  • Source:

    • Install Python 3
    • $ git clone https://github.com/ssebs/simpleshare
      $ cd simpleshare/
      $ python -m venv venv
      
    • Linux:
      • $ source ./venv/bin/activate
    • Windows:
      • > .\venv\Scripts\activate
    • (venv) $ pip install -r requirements.txt
      
  • Binary:

    • Download a binary for your platform in the releases page.
  • PyPI:

    • $ pip install simpleshare
    • $ simpleshare

Usage:

  • CLI
    usage: simpleshare.py [-h] [--type {client,server}] [--ip IP] [FILENAME]
    
    Local file sharing utility. Can be used as server and as a client. Run this
    without any arguments to run GUI.
    
    positional arguments:
      FILENAME              Name of the file you want to share, if running as the
                            server.
    
    optional arguments:
      -h, --help            show this help message and exit
      --type {client,server}
                            Type, how do you want to use this tool
      --ip IP               IP address, only used if you're the server
    
  • GUI
    • Double click the exe / binary.

Building

  • Linux:
    • $ make
  • Windows:
    • > .\Makefile.bat
  • (venv) $ pyinstaller simpleshare/__main__.py --clean -F -n simpleshare

Screenshots

Home

home

Upload

upload

Download

download

TODO:

  • Structure program
    • 3 connections
      • Server: Share filename (Multicast)
      • Client: Reply to server saying that you want the file (UDP)
      • Server: Send file to client (TCP)
    • CLI
    • GUI
  • Server
    • "Broadcast" (multicast) that you're sharing "x" file
    • Have server send files if requested to IP found.
    • CLI
    • GUI
      • DnD
      • Custom timout
  • Client
    • Listen to see if anyone is sharing files
    • List available files
    • Download files to specified file name/path
    • CLI
    • GUI
  • Make this work with 1 file, 1 client
  • Make this work with 1 file, 2 clients
  • Make this work with 2 files (2 servers), 1 client
  • Make this work with 2 files (2 servers), 2 client
  • Binary output (.exe, .app, etc.)
    • Icon support
  • Refactor + document
  • Unit Tests

Bugs:

  • Threads won't stop properly
  • Can't have 2 clients
  • Can't have 2 servers
  • GUI
    • Styling
    • Only Choose IP if more than 1 available
    • Share Thread issues

License

MIT © 2019 Sebastian Safari

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc