Skip to content

NurikDz/streamdrop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#If this code helped you, please drop a ⭐ to support the project

StreamDrop

macOS menu bar app for downloading files from Telegram (public post links or channel browse) and video URLs (YouTube, Twitch, TikTok, and many other sites). One popover shows the queue, progress, and settings. The app does not use the Dock.

Requires macOS 15 or later.

What it does

  • Telegram: Sign in with API credentials from Telegram’s developer tools in the browser, then your phone number and login code (and 2FA if your account uses it). Paste a public post link from Telegram or use Browse channel files to pick documents, videos, or audio.
  • Web URLs: Paste a link; the app queues the download and shows progress.
  • Queue: Pause, resume, cancel, retry failures, clear completed. Pick a download folder and tune how many jobs run at once.
  • Optional: Install yt-dlp and ffmpeg from the Dependencies tab when the app prompts you (improves some web downloads).
  • Open at login: Enable in Settings → About (you may need to allow the app under System Settings → General → Login Items).

Requirements

Requirement Notes
macOS 15.0+
streamdropdemo-demo.mp4

| Xcode | Current Xcode from the Mac App Store (for building from source) | | Apple ID | Free Apple ID is enough to sign the app for your own Mac in Xcode | | Telegram | API ID and API hash from Telegram’s API / developer page | | Network | Outbound internet for Telegram and web downloads |

Build and run in Xcode

  1. Clone this repository.
  2. Open StreamDrop.xcodeproj.
  3. Select the StreamDrop scheme and My Mac.
  4. In the Signing & Capabilities tab for the StreamDrop target, choose your Team (your personal team is fine for local use).
  5. Product → Run (⌘R).

First launch: Settings → Telegram → enter API ID and API Hash → Save & Connect → complete sign-in.

Build a .dmg for your own use

  1. In Xcode, archive or build Release (same scheme), or from the repo root:
cd /path/to/streamdrop
xcodebuild -scheme StreamDrop -configuration Release \
  -derivedDataPath "$(pwd)/build/DerivedDataRelease" \
  -destination 'platform=macOS' \
  build
  1. Create the disk image (run in Terminal.app on your Mac so Finder can apply layout/icon steps if you grant Automation):
./scripts/make-release-dmg.sh

By default the script uses StreamDrop/Resources/AppIcon.icns for the DMG volume icon. To use another icon:

export STREAMDROP_VOLUME_ICNS="/path/to/your.icns"
./scripts/make-release-dmg.sh

Output: build/StreamDrop-1.0.dmg.

Gatekeeper: a build signed only for development may show “cannot be opened” on another Mac until the user approves it in Privacy & Security or uses Open from the context menu. Distribution beyond your own machine usually needs notarization with a Developer ID certificate.

Privacy

Session data for Telegram is stored under your user Application Support folder. API id/hash and related fields may be stored in the Keychain and app preferences.

License

See LICENSE.

About

macOS menu bar app for downloading files from Telegram (public post links or channel browse) and video URLs (YouTube, Twitch, TikTok, and many other sites). One popover shows the queue, progress, and settings. The app does not use the Dock.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors