Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PPTiny

image

EN | 中文

Download App

PPTiny is a small macOS app for one-click PowerPoint compression.

Current version: 1.0.0

It accepts one or more .pptx files by drag-and-drop or file picker, compresses them in order, and keeps the original file name for the compressed result. The old original file is renamed with an .old.pptx suffix.

Features

  • Drag in one or multiple PPTX files.
  • Review the file queue before compression.
  • Remove files from the queue.
  • Compress files sequentially.
  • Keep the compressed file at the original path.
  • Rename the original file to name.old.pptx, or name.old-1.pptx if needed.
  • Downsample images to a 1080p-equivalent bound:
    • landscape: up to 1920x1080
    • portrait: up to 1080x1920
  • Convert non-transparent PNG/BMP/TIFF images to JPEG.
  • Compress audio/video with macOS AVFoundation, without requiring ffmpeg.
  • Remove embedded PowerPoint fonts to reduce file size.
  • Detect cloud placeholder files and show a clear download-first message.

Requirements

  • Apple Silicon Mac
  • macOS 14 or later
  • No ffmpeg or Homebrew dependency

The app is currently built for arm64 only. Intel Mac support is intentionally not included.

Build

swift build

The app version is managed in VERSION. The build script writes this value into CFBundleShortVersionString; CFBundleVersion defaults to 1 and can be overridden with BUILD_NUMBER.

Run

./script/build_and_run.sh

This builds the SwiftPM app, stages dist/PPTiny.app, copies the app icon, applies ad-hoc signing, and launches the app.

Packaged App

After running the build script, the app bundle is available at:

dist/PPTiny.app

The app bundle contains only the app executable and icon. Runtime media compression uses macOS system frameworks.

CLI Test Helper

A CLI target exists for testing the compression core:

swift run PPTinyCLI /path/to/file.pptx

The CLI uses the same compressor as the app and performs the same in-place replacement behavior.

Privacy And Git Hygiene

This repository intentionally ignores local documents, generated decks, Office files, media files, build products, app bundles, local Codex state, and signing material.

Do not commit real customer decks, cloud-drive files, generated compression outputs, or signing credentials.

Project Layout

Sources/PPTiny/       SwiftUI macOS app
Sources/PPTinyCore/   PPTX compression engine
Sources/PPTinyCLI/    CLI test wrapper
Assets/AppIcon/       App icon assets
script/               Build and run script
tools/                Icon generation utility

About

A compressing tool for powerpoint file.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages