README.md
April 9, 2026 ยท View on GitHub
Tempo
A sleek video speed & export utility + image compressor for macOS
โจ Features
Video Export
- ๐ Speed Control โ Export videos at 1ร, 2ร, 3ร, or 4ร playback speed
- ๐บ Quality Options โ Choose Original, 480p, 720p, or 1080p output
- ๐ Real-time Progress โ Circular progress indicator with estimated file size
Image Compression
- ๐ท Smart Compression โ Adjust quality from low to near-lossless
- ๐งน Metadata Stripping โ Optional EXIF/metadata removal for smaller files
- ๐ Batch Processing โ Compress multiple images at once
- ๐๏ธ Live Preview โ Thumbnail previews with before/after file sizes
- ๐จ Format Support โ JPEG, PNG, HEIC with automatic PNGโJPEG conversion
General
- ๐ Drag & Drop โ Simply drop files onto the app
- ๐ Dark Mode โ Deep, calming dark surfaces that let your content shine
- ๐จ Minimalist Design โ Refined, typography-driven interface with subtle interactions
- ๐ Open With Support โ Right-click any video or image and select Open With โ Tempo
- โก Lightweight โ Focused utility that does one thing exceptionally well
๐ฅ Download
Note: Tempo is not notarized with Apple Developer ID. On first launch:
- Right-click on Tempo.app
- Click Open
- Click Open in the security dialog
๐ Getting Started
- Download the
.dmgfile from above - Open the downloaded
Tempo.dmg - Drag
Tempo.appinto the adjacent Applications folder shortcut - Launch Tempo from
/Applications - Choose Mode โ Switch between "Export Video" or "Compress Images" at the top
- Drop Files โ Drag video or image files onto the app
- Configure โ Set speed/quality (video) or compression level/options (images)
- Export โ Click the export button and choose your output location!
๐ฅ๏ธ Screenshots
๐ฌ Supported Formats
Video
| Input | Output |
|---|---|
.mov | .mp4 |
.mp4 | .mp4 |
.avi | .mp4 |
| QuickTime | H.264 |
Images
| Input | Output | Notes |
|---|---|---|
.jpg / .jpeg | .jpg | Adjustable quality (0-100%) |
.png | .jpg | Auto-converts to JPEG for compression |
.heic | .heic | Apple's modern format, adjustable quality |
๐ ๏ธ Building from Source
# Clone the repository
git clone https://github.com/samirpatil2000/Tempo.git
cd Tempo
# Build the app and create a DMG
./build_dmg.sh
Or open Tempo.xcodeproj in Xcode and build normally.
Requirements
- macOS 13.0 or later
- Xcode 15.0 or later
- Swift 5.9
๐ Project Structure
Tempo/
โโโ TempoApp.swift # App entry point with URL routing
โโโ Theme.swift # Colors, materials & animations
โโโ Models/
โ โโโ AppState.swift # Unified state management (video + image)
โ โโโ AppMode.swift # Video/Image mode enum
โ โโโ ImageFile.swift # Image data model with compression metadata
โ โโโ Resolution.swift # Speed & resolution enums
โโโ Processing/
โ โโโ VideoProcessor.swift # Video export engine
โ โโโ ImageProcessor.swift # Image compression engine (ImageIO)
โโโ Views/
โโโ ContentView.swift # Main layout with mode toggle
โโโ DropZoneView.swift # Video drag & drop zone
โโโ ImageDropZoneView.swift # Image drag & drop zone
โโโ SelectorViews.swift # Segmented controls
โโโ ExportButtonView.swift # Video export button & progress
โโโ ImageExportButtonView.swift # Image export button & progress
โโโ ImageListView.swift # Image file list with thumbnails
โโโ ImageControlsView.swift # Quality slider & metadata options
โโโ ImageDropZoneView.swift # Multi-file image drop zone
๐ค Contributing
Contributions are welcome! Feel free to:
- Report bugs
- Suggest features
- Submit pull requests
๐ License
MIT License โ feel free to use this project however you like.
Made with โค๏ธ for macOS