GithubHelp home page GithubHelp logo

balgopalpatro / bayjdo Goto Github PK

View Code? Open in Web Editor NEW

This project forked from aswinshenoy/bayjdo

0.0 0.0 0.0 494 KB

A Fast, Simple & Secure Way to Transfer Files between Devices

Home Page: https://bayjdo.com/

License: GNU General Public License v3.0

Dockerfile 0.58% JavaScript 97.71% CSS 1.71%

bayjdo's Introduction

Bayjdo

A Fast, Simple & Secure Way to Transfer Files between Devices

GitHub release (latest by date including pre-releases) GitHub GitHub last commit

BayJDO App

๐Ÿ”ฅ Features

  • โœ… Light - The lightest file-transfer app you would find!
  • โœ… Fast - Zero Overheads. Theoretically, as fast as your WiFi is!
  • โœ… Secure - P2P WebRTC-based File-Transfer
  • โŒ No Special Hotspot - Works with any existing hotspot or network between devices.
  • โŒ No App Install - Works on any device with a modern web browser.
  • โŒ No Non-Sense - Open Source, No Ads, No User Info Asked/Stored

๐ŸŽˆ How to Use?

  1. Ensure both devices are in the same network
  2. Open Bayjdo in both devices, and from any one of the device enter the code of the other. (You may also make use of in-built QR-Scanner & Scan the QR instead)
  3. Select files to send ๐Ÿ—‚
  4. Wait till transfer is complete, ๐ŸŽ‰

๐Ÿ’ฌ Frequently Asked Questions

What technology does it use?

The app is completely based on web-technologies and runs on any modern web browser. For establishing the connection between two devices, a WebRTC signalling server (PeerJS) is used. This server is however not involved in the data transfer process.

How is privacy ensured? ๐Ÿ™ˆ

All files being transmitted get encrypted by WebRTC standards, no one except the two devices would be able to read them. For further clarification, no files are ever sent to any server, and the file are always transferred directly (P2P) from one device to another through an encrypted WebRTC/WS channel.

Are all browsers supported?

Sadly no. ๐Ÿ˜ž Only browsers with the support for WebRTC can support Bayjdo, however, all modern & popular browsers do support WebRTC and hence Bayjdo ๐Ÿป

๐Ÿ”ง Tech Stack

NextJS / PeerJS / WebRTC / WebSocket

๐Ÿ’Ž Contributions

Being an open source project, any sort of contributions - pull requests, bug reporting, feature request, documentation help are all welcomed.

๐Ÿ›  How to Run Locally & Develop ?

To run and develop using docker-compose, you may use the following configuration in you docker-compose.yml -

version: '3.6'
services:
  bayjdo_server:
    container_name: bayjdo_server
    image: peerjs/peerjs-server
    ports:
      - 9000:9000
  bayjdo_webapp:
    container_name: bayjdo_webapp
    image: webapp
    ports:
      - 3000:3000
    environment:
      - PORT=3000
    volumes:
      - ./webapp:/app
      - /app/node_modules
      - /app/.next
    build:
      context: webapp
      dockerfile: Dockerfile-Dev
    command:
      "npm run dev"

๐ŸŒŸ How to Contribute?

  1. Fork the repository, clone it locally and run it following the installation instruction above.
  2. Find an issue or feature to work on, and put up an issue.
  3. Work on the patch or feature, test it and send a pull request referencing the issue.

๐Ÿ›‘ Disclaimer

This project is only being developed, as a hobby project and does not intend to replace any popular file transfer application. The implementation of this project is currently very basic, and intends only to be a proof of concept for the technology used. This app may have technical glitches, security & privacy vulnerabilities. If you plan to use it for transferring confidential files etc., please look elsewhere for now.

๐Ÿฑ Inspirations

Neither the idea for this project, nor the technology used is, were conceived originally by me. This project only differs in implementations (+ some minor features), from some of the following popular projects it was inspired from -

  1. https://github.com/cowbell/sharedrop / https://www.sharedrop.io/
  2. https://github.com/RobinLinus/snapdrop / https://snapdrop.net/

โœ’๏ธ License

This project repository is licensed under GNU General Public License V3.

Credits

  1. Icons / illustrations - https://icons8.com/, https://icons8.com/ouch

Developed with โ™ฅ by Ashwin Shenoy.

bayjdo's People

Contributors

aswinshenoy 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.