frame-snip-cli
v0.2.0
Published
CLI tool for watermarking and preparing images for social media
Maintainers
Readme
frame-snip-cli
A CLI tool for watermarking and preparing images for social media. Built with TypeScript and Bun, powered by exposure-watermark.
Features
- Watermark images with EXIF exposure metadata (aperture, shutter speed, ISO, focal length)
- Output images in a clean 3:4 matted format perfect for Instagram
- Slice panoramic images into gallery-ready segments
- Smart mode: Auto-detect wide panoramas (>2:1 aspect ratio) and process accordingly
- Batch process entire directories
- Fast processing with Bun runtime
Installation
# Clone and install
git clone <repo-url>
cd frame-snip-cli
bun install
# Link globally for `fsc` command
bun linkUsage
# Process current directory, output to ./matted (default behavior)
fsc
# Watermark a single image (outputs to same directory)
fsc photo.jpg
# Watermark with custom output directory
fsc photo.jpg --output=./processed
# Process panorama into gallery slices
fsc panorama.jpg --panorama
# Smart mode: auto-detect panoramas and process accordingly
fsc ./photos --smart --output=./processed
# Batch process all JPEGs in a folder
fsc ./photos --output=./processed
# Batch process panoramas
fsc ./photos --panorama --output=./processedOptions
| Option | Short | Description |
|--------|-------|-------------|
| [input] | | Image file or directory to process (default: .) |
| --panorama | -p | Enable panorama slicing mode |
| --smart | -s | Auto-detect: panorama for wide images (>2:1), watermark for others |
| --output <dir> | -o | Output directory (default: ./matted) |
| --help | -h | Show help message |
| --version | -v | Show version number |
Output Naming
- Standard mode:
input.jpg→input-framed.jpg - Panorama mode:
input.jpg→input-framed-1.jpg,input-framed-2.jpg, etc.
Supported Formats
Currently supports JPEG images (.jpg, .jpeg).
Development
# Run tests
bun test
# Run tests in watch mode
bun test --watch
# Type check
bun run lint
# Run CLI directly
bun run src/index.ts <args>License
MIT
