A fast and simple Flutter app to share files between devices with ease!
FileShareApp was created as my Third Year Project for BSC.CS at Model College, Mumbai University. The project showcases cross-platform mobile development using Flutter and Dart, focusing on fast, user-friendly file sharing.
FileShareApp lets you transfer files seamlessly between smartphones, tablets, and computers. Whether photos, documents, or videos—sharing is just a tap away.
- Cross-platform support: Works on Android, iOS, and desktop.
- Network Connection: The app works seamlessly when both devices are connected to the same Wi-Fi network or a mobile hotspot.
- User-friendly UI: Clean, minimal interface for all ages.
- QR Code or Manual Entry: Users can initiate transfers by scanning a QR code for quick pairing or manually entering the receiver’s IP address and port number.
- Fast Local Transfers: Leveraging efficient socket-based communication, Xbean provides lightning-fast transfer speeds for large files.
- History: View previous transfers and resend files.
- Security: Files are shared directly between devices on the local network using HTTP sockets and Encrypted transfers for safety.
- Flutter: UI framework
- Dart: Programming language
- GoRouter: For declarative and flexible navigation within the app.
- Flutter Riverpod: A robust state management library used for managing app-wide state like themes and transfer history.
- Lottie: For displaying smooth, scalable animations throughout the user interface.
- FilePicker: A package for picking files from the device's storage.
- Mobile Scanner & QR Flutter: Used for scanning and generating QR codes for easy device pairing.
- http: A networking library for handling the file transfer protocol.
- permission_handler: A package for requesting and checking device permissions.
Pre-requisites:
- Flutter SDK (Install guide)
- Git
Steps:
-
Clone the repository:
git clone https://github.com/Vishnu9604/FileShareApp.git cd FileShareApp -
Install dependencies:
flutter pub get -
Run the app:
flutter run
- Open the app on your device.
- Select files you want to share.
- Choose recipient device (auto-discovered or via QR code).
- Tap "Send" and watch the magic happen!
Note: Both devices must be on the same network or connected through Bluetooth/Wi-Fi Direct.
Want to make FileShareApp better?
Follow these steps:
- Fork the repo & clone your fork.
- Make changes in a new branch.
- Push and open a Pull Request describing your changes.
See CONTRIBUTING.md for more details!
Q: What types of files can I share?
A: Any file type—images, docs, videos, APKs, etc.
Q: Is my data secure?
A: Yes! Transfers are encrypted.
Q: Can I send files to a PC?
A: Desktop support is planned; stay tuned!
Distributed under the MIT License. See LICENSE for details.
Feel free to reach out for feature requests or bug reports!