https://github.com/deadpoolx7/dhara
Seamless file transfer lightweight, blazing fast CLI tool build on-top of Bun
https://github.com/deadpoolx7/dhara
cli fast file-sharing privacy-protection qrcode
Last synced: 5 months ago
JSON representation
Seamless file transfer lightweight, blazing fast CLI tool build on-top of Bun
- Host: GitHub
- URL: https://github.com/deadpoolx7/dhara
- Owner: DeadpoolX7
- Created: 2025-08-12T06:07:20.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-09-03T06:24:52.000Z (10 months ago)
- Last Synced: 2025-10-09T03:42:11.279Z (8 months ago)
- Topics: cli, fast, file-sharing, privacy-protection, qrcode
- Language: TypeScript
- Homepage: https://npmjs.com/package/dhara
- Size: 21.5 KB
- Stars: 4
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Dhara
Dhara is a CLI tool for seamless file transfer between devices using QR codes. Share files instantly between your desktop and mobile devices without installing any apps or signing up for services.
## Features
- 🚀 Instant file sharing via QR codes
- 📱 No mobile app required - works through browser
- 📂 Support for single or multiple files
- 🗂️ Directory sharing with automatic zip compression
- 🔒 Secure one-time transfers with auto-expiring links
- 📊 Progress bar for transfer tracking
## Installation
__NOTE: use bun for installation and use.__
```bash
bun install -g dhara
```
## Usage
### Sharing Files
Share a single file:
```bash
dhara path/to/file
```
Share multiple files (automatically zipped):
```bash
dhara -m file1.txt file2.pdf file3.jpg
```
Share an entire directory(automatically zipped):
```bash
dhara path/to/directory
```
### Receiving Files
Start receiving files:
```bash
dhara receive
```
With custom session ID:
```bash
dhara receive --id mysession123
```
## How it Works
1. When sharing:
- Dhara starts a temporary local server
- Generates a QR code containing the download URL
- Scan the QR code with your mobile device to download
- Server automatically shuts down after transfer
2. When receiving:
- Starts a temporary upload server
- Displays QR code for the upload page
- Open on mobile device to upload files
- Files are saved to a local directory
- Server shuts down after transfer
## Development
Clone and install dependencies:
```bash
git clone https://github.com/yourusername/dhara.git
cd dhara
bun install
```
Build the project:
```bash
bun build
```
Run locally:
```bash
bun run dev
```
## Requirements
- bun <= 1.2.21
- Network connectivity between devices
- Devices must be on the same local network
## License
MIT
## Contributing
Contributions are welcome! Please feel free to submit a Pull Request.