Skip to content

Latest commit

Β 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Zipline Logo

Zipline

Fast, Local, End-to-End Encrypted Data Synchronization between Android and Windows.

GitHub Stars License Platform Version Downloads Build Status


πŸš€ Overview

Zipline is a completely offline, privacy-first data synchronization tool that securely transfers your clipboard, files, and notifications between your Android device and your Windows PC.

It connects strictly over your Local Area Network (LAN) using WebSockets and raw TCP, bypassing the cloud entirely. With Zipline, your data never touches a third-party server.

  • Privacy-First: No accounts, no cloud sync, no tracking.
  • Cross-Platform: Beautiful M3-inspired dark native UI for Android and Windows.
  • Encrypted Communication: All transfers are secured end-to-end with AES-256-GCM.
  • Fast Local Transfers: Bypasses slow cloud uploads, utilizing your full Wi-Fi router speeds.
  • Folder Synchronization: Sync directories effortlessly.
  • Peer-to-Peer Networking: Simple 60-second rotating QR code pairing to connect instantly.

✨ Features

  • πŸ“‹ Bidirectional Clipboard Sync: Copy on your PC, paste on your phone immediately. Works seamlessly in the background on Android.
  • πŸ“ File & Folder Transfers: Lightning fast dual-channel architecture. WebSockets for signalling, raw TCP for heavy byte streaming.
  • πŸ”” Notification Mirroring: See your Android notifications directly on your Windows desktop.
  • πŸ”’ Military-Grade Security: A unique AES session key is negotiated locally via PBKDF2 during the QR handshake.
  • ⚑ No Cloud Dependency: Works without an active internet connection as long as devices are on the same Wi-Fi.

πŸ— Architecture

Zipline flips the traditional connection paradigm. Because phones have cameras and desktops usually don't, Windows acts as the WebSocket Server while the Android device acts as the Client.

  1. Pairing: Windows generates a secure 32-char token and displays it as a rotating QR code. Android scans the QR code.
  2. Key Derivation: Both devices use PBKDF2 (100k iterations, HMAC-SHA256) to derive a shared AES-256-GCM session key.
  3. Data Channel: Small data (clipboard, notifications) travels over encrypted WebSocket frames (Port 8080).
  4. Bulk Transfer: Large files stream over a secondary raw TCP socket (Port 8081) bypassing WebSocket overhead for speeds of 30-80 MB/s.

πŸ›  Technology Stack

Component Technology Description
Core Framework Flutter Cross-platform UI toolkit.
Networking web_socket_channel / dart:io WebSockets and raw TCP Sockets.
Cryptography encrypt / pointycastle AES-256-GCM and PBKDF2 hashing.
UI System Material 3 Fully customized dark-theme token system (ZiplineColors.brand).
Persistence sqflite / shared_preferences Local state and history retention.

πŸ“₯ Download

Pre-compiled production binaries are available in the /releases folder of this repository.


πŸ’» Installation & Usage

For Regular Users (Android)

  1. Download the Latest APK.
  2. Install it on your Android device (you may need to allow "Install Unknown Apps").

For Developers (Building from Source)

Zipline requires the Flutter SDK ^3.10.4.

# Clone the repository
git clone https://github.com/Ravitheja1289-dot/Zipline.git
cd Zipline

# Install dependencies
flutter pub get

# Build Android APK
flutter build apk --release

# Run on connected Android device
flutter run -d android

# Run on Windows
flutter run -d windows

Usage Instructions

  1. Open Zipline on your Windows PC. It will generate a pairing QR code. (Approve any Windows Firewall prompts for port 8080/8081).
  2. Open Zipline on your Android device and tap Scan.
  3. Point your phone's camera at the Windows QR code.
  4. The devices will instantly pair and establish an encrypted connection.

πŸ›‘ Security & Privacy

Zipline is built on the philosophy that local data should stay local. By removing the cloud intermediate, you eliminate the risk of server-side data breaches.

Encryption Details:

  • Algorithm: AES-256-GCM with a fresh 96-bit IV for every single message.
  • Key Generation: A 190-bit entropy session token (Random.secure()) is converted into an AES key via PBKDF2.
  • Authentication: GCM tags natively prevent tampering and ensure authenticity.
  • Privacy: We do not track telemetry, crashes, or analytics.

πŸš€ Performance

Cloud synchronization involves uploading your payload to a remote datacenter and downloading it on another device. This is limited by your ISP's uplink speeds (often <20 Mbps). Zipline uses your local Wi-Fi router's maximum bandwidth. Utilizing raw TCP (SO_SNDBUF raised to 1 MiB, TCP_NODELAY=true), Zipline easily hits 30–80 MB/s on standard 5GHz networks.


πŸ“‚ Folder Structure

Zipline/
β”œβ”€β”€ android/          # Native Android embedding & services
β”œβ”€β”€ windows/          # Native Windows embedding
β”œβ”€β”€ assets/           # Branding and design resources
β”œβ”€β”€ lib/              # Core Flutter Application
β”‚   β”œβ”€β”€ core/         # Business logic, crypto, WebSockets, sockets
β”‚   └── ui/           # Platform-specific UI and shared M3 theme
└── releases/         # Production build artifacts

πŸ—Ί Roadmap

  • Bidirectional Clipboard Sync
  • Android Background Native Service
  • Dual-Channel File Transfer Backbone
  • UI for Local File/Folder Transfers
  • Notification Mirroring UI
  • Secure Storage Integration (flutter_secure_storage)
  • Forward Secrecy via ECDH
  • mDNS/NSD Zero-Config Rediscovery

🀝 Contributing

We welcome contributions! Please see our Contributing Guide and Code of Conduct. If you find a bug or have a feature idea, use our Issue Templates.


πŸ“œ License

Zipline is licensed under the MIT License.


πŸ‘¨β€πŸ’» Author

Built with passion for privacy and local-first software.

About

A privacy-first, cross-platform tool to securely sync your clipboard, files, and notifications over local Wi-Fi.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages