Skip to content

boggspa/Photoscope

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Photoscope

Photoscope is a native macOS photo editing and metadata workflow app built with SwiftUI, Core Image, ImageIO, Vision, and Core Location. It focuses on RAW/JPEG inspection, non-destructive adjustment state, metadata editing, scopes, culling, batch export, lens/camera profile helpers, and RAW recovery tooling.

Current Status

This is an early open-source release. The app builds locally and is useful for experimentation, but some workflows are still evolving and should be treated as pre-1.0.

Requirements

  • macOS 15.5 or later
  • Xcode with a recent macOS SDK available
  • Optional: exiftool for RAW preview and metadata fallbacks in unsandboxed development builds

Install the optional development exiftool dependency with Homebrew:

brew install exiftool

Photoscope looks for exiftool at:

  • /opt/homebrew/bin/exiftool
  • /usr/local/bin/exiftool
  • /usr/bin/exiftool

Build

Open Photoscope.xcodeproj in Xcode and build the Photoscope scheme, or run:

xcodebuild -scheme Photoscope -configuration Debug -destination 'generic/platform=macOS'

The project is configured without a checked-in Apple Developer Team ID. If Xcode asks for signing details, set your own team in Signing & Capabilities or use local/ad-hoc signing for development.

Ad-hoc builds are intended for local development only. Public binary distribution should use your own Developer ID signing and notarization flow.

Privacy

Photoscope works with local image files selected by the user. It reads image pixels and metadata, may cache thumbnails/previews in the user's cache directory, and may persist app metadata such as library indexes, export presets, and reverse-geocoding cache entries in Application Support.

Reverse geocoding uses Apple's platform geocoder when the user asks the app to resolve GPS coordinates into place names. Image files and metadata are otherwise processed locally by the app and system frameworks.

RAW And exiftool

Most RAW handling uses macOS ImageIO/Core Image APIs. Some formats, especially Panasonic RW2 variants, may need exiftool to extract embedded previews or metadata that ImageIO does not expose.

exiftool is not bundled in this repository. If a future distribution bundles it, the distribution must include the appropriate exiftool license and attribution.

The app sandbox is enabled with user-selected read/write file access. In sandboxed builds, Photoscope does not execute Homebrew or system exiftool paths. It only uses exiftool if a distribution bundles an executable helper inside the app and includes the required license and attribution. Unsandboxed local development builds may still use the Homebrew/system paths above.

Saved projects include security-scoped bookmarks for imported source files when macOS grants access. Older .photoscope files without bookmarks may need photos re-imported if the sandbox cannot regain access to their original paths.

Repository Notes

  • build/, Xcode user state, .DS_Store, and local tool state are ignored.
  • Internal notes for camera, lens, maker-note, and RAW processing areas live under docs/internal/. They describe evolving internals and are not product commitments.
  • No sample photos are included.

License

Photoscope is released under the MIT License. See LICENSE.

About

Native macOS photo editing and metadata workflow app built with SwiftUI and Core Image.

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages