GithubHelp home page GithubHelp logo

00mjk / airshare Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kurolabs/airshare

0.0 0.0 0.0 10.22 MB

Cross-platform content sharing in a local network

Home Page: https://airshare.rtfd.io

License: Other

Python 40.32% HTML 59.68%

airshare's Introduction


Airshare

Airshare

PyPI PyPI PyPI - Python Version PyPI - License Documentation Status

Cross-platform content sharing in a local network.

Airshare is a Python-based CLI tool and module that lets you transfer data between two machines in a local network, P2P, using Multicast-DNS. It also opens an HTTP gateway for other non-CLI external interfaces. It works completely offline! Built with aiohttp and zeroconf. Checkout the demo.

Features

  • Blazing fast content transfer within a local network.

  • Lets you transfer plain text, send from or receive into your clipboard.

  • Supports transfer of multiple files, directories and large files - content is sent chunk by chunk and never read into memory entirely.

  • Lets you send files whose paths have been copied into the clipboard (more details in the docs).

  • Cross-platform, works on Linux, Windows and Mac (CLI and Web Interface), and also supports mobile (Web Interface).

  • Uses Multicast-DNS service registration and discovery - so you can access content with human-readable code words.

  • Can be used as a module in other Python programs.

Airshare Demo

Important Links

Source Code: https://github.com/KuroLabs/Airshare
Bug Reports: https://github.com/KuroLabs/Airshare/issues
Documentation: https://airshare.rtfd.io
PyPI: https://pypi.org/project/Airshare

Installation

$ pip install Airshare
$ pipx install Airshare
$ brew install airshare

Example

Send and receive files and directories.

To send using the CLI,

$ airshare noobmaster requirements.txt

To receive using the CLI,

$ airshare noobmaster

or visit http://noobmaster.local:8000 in the browser to download.

You can also import airshare in any Python program. Visit the documentation for detailed usage instructions.

Known Issues

  • Link-local Name Resolution (for the .local addresses) on non-Apple devices requires Avahi (on Linux) or Bonjour (on Windows). Chances are you already have them, but if you don't, do check the web on how to install them.

  • Android browsers do not have inbuilt Multicast-DNS service discovery, and cannot resolve the .local addresses. For this reason, we included QR Code support, for you to visit the URLs easily.

  • Windows users with Python < 3.8, use Ctrl + Break to quit, as Ctrl + C will not work. This is a known issue with asyncio, which has been fixed in Python 3.8. If you do not have a Break key, try using Ctrl + Fn + B, or check the web for other alternatives (depending on your PC).

Contributing

Contributions are welcome! Read our Contribution Guide for more details.

License

MIT - Copyright (c) 2020 Kandavel A, Mohanasundar M, Nanda H Krishna

Acknowledgements

The Airshare logo was designed by Siddique.

The Airshare GIF was created by Anam Saatvik.

airshare's People

Contributors

ak5123 avatar mohanpierce99 avatar nandahkrishna avatar vladimyr avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.