chekusu / dropack
git clone https://github.com/chekusu/dropack.git
Native iPhone and iPad photo/video albums, AirDrop packages, and resumable Photos imports.
—
stars, 24h
+28
stars, 7 days · #1,409
+28
stars, 30 days · #9,299
28
★ total · +28% this week
6
forks · 0 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageSwift
LicenseMIT
Created2026-10-18 (2d ago)
Last push2d ago
Watchers0
OwnerOrganization
GitHub topics
Links
- GitHub: github.com/chekusu/dropack
- Homepage: https://dropack.app
- Releases · Issues · Hacker News mentions
README excerpt
# Dropack **Big files. Shared in batches.** A native iPhone and iPad app for packaging original photos and videos, sharing them through the iOS share sheet, and saving received media to Photos with progress and recovery. Website · Join TestFlight · 简体中文 · Website source ## What it does - **Share albums:** select photos, videos, or files; manage an album; create its archive when sharing. Reuse unchanged packaged resources when updating an archive. - **Use AirDrop:** send a `.dropack` package through Apple's system share sheet, or export a standard ZIP for other tools. A `.dropack` file is a ZIP archive with an album manifest. - **Receive safely:** inspect a received album before saving. Import photos, videos, ZIPs, or folders chosen in Files, including supported external drives and cloud providers. - **See the work:** distinguish iCloud downloads from packaging, show item progress, pause and resume supported tasks, and surface progress with Live Activities on supported devices. - **Avoid repeat imports:** use content hashes and local import history to skip previously confirmed saves. Ambiguous interrupted saves require review rather than automatic duplication. - **Keep control:** browse album media, add or remove album items, manage local packages, and choose the app language and appearance. Dropack runs on **iOS / iPadOS 17 or later** and includes 16 languages. Processing happens on the device; there is no Dropack account or file-upload backend. iCloud, AirDrop, Files providers, and update checks can use the network. ## Build You need a Mac, **Xcode 26 or later** (the source uses the iOS 26 background-processing APIs behind availability checks), and Python 3 for project/resource maintenance. The app itself is Swift / SwiftUI; Expo and Node.js are not required to build it. [code] Choose the `Dropack` scheme and an iPhone or iPad simulator. Xcode resolves **ZIPFoundation 0.9.20**, pinned in the project and integration-test package. For a device build, use your own Apple development team. Forks must choose their own app and Live Activity extension bundle identifiers. If you change the `app.dropack.ios` prefix, update the background-task identifiers in `PhotoRelay/Info.plist` and `PhotoRelay/Services/PackageBackgroundExecution.swift` as well. The project generator contains the bundle-ID defaults; update it before regenerating the project. No signing certificates, provisioning profiles, Apple credentials, or official Expo release configuration are included. An unsigned simulator build: [code] ## Development and checks [code] After adding Swift files, run `python3 scripts/generate_project.py`. After changing translations, run `python3 scripts/localization_audit.py --write` and regenerate the project. See localization notes. | Directory | Contents | | --- | --- | | `PhotoRelay/Core` | Album models, checkpoints, ZIP validation, resumable file copying, and import identity | | `PhotoRelay/Services` | PhotoKit, file access, packaging/import workers, p