Thanks to visit codestin.com
Credit goes to github.com

Skip to content

diffractor/diffractor

Repository files navigation

Diffractor

CI

Free, high-performance photo and video organizer for Windows. Optimized for speed and local file control—no cloud storage or subscriptions required.

Features

Category Capabilities
Viewing Unified photo/video/audio playback; native support for most formats including RAW
Search Instant metadata-based search (tags, location, camera data) via local indexing
Metadata Read/write XMP, IPTC, EXIF, ID3; add tags, ratings, location
Organization Side-by-side comparison, duplicate detection ("Presence" feature)
Sync Bidirectional sync to NAS/network drives for backup and collaboration
Editing Resize, rotate, crop, color adjustment

Quick Start

  1. Download from diffractor.com and install
  2. Point to your media folders—Diffractor indexes automatically
  3. Browse via sidebar (date, location, folder, file type)
  4. Apply ratings/tags via keyboard shortcuts or UI; use Compare view for burst sorting
  5. Sync to network drives; use metadata tools for maintenance

Why Diffractor? Fast (handles large libraries without lag), private (local-only), lightweight, free.

Deployment Options

Distribution Description
Windows Desktop Traditional installer (diffractor-setup.exe) with auto-update support
Windows Store MSIX package for Microsoft Store distribution (updates handled by Store)
Portable ZIP archive for standalone use without installation

Both Desktop and Store builds share the same codebase. The WINSTORE preprocessor define controls Store-specific behavior (disables built-in auto-update since the Store handles updates).

Building

git clone --recursive https://github.com/diffractor/diffractor.git

Open df.sln in Visual Studio 2022. Submodules: FFmpeg, XMP-SDK.

Build Script

Use dd.ps1 from a Developer PowerShell:

Command Description
.\dd.ps1 Show usage information and current version
.\dd.ps1 desktop Build desktop versions (Win32 + x64), auto-increments build number
.\dd.ps1 store Build Windows Store MSIX package, auto-increments build number
.\dd.ps1 run Run the recently built diffractor64.exe
.\dd.ps1 bump-build Manually increment build number without building
.\dd.ps1 bump-ver Increment minor version (e.g., 1.26.2 ? 1.26.3)

Prerequisites for release builds: NSIS, 7-Zip, Windows SDK, code signing certificate.

See implementation.md for architecture details.

Contributing

Contributions welcome via issues.

Translations: Edit PO files with poedit. Files in exe/languages. Use German as template for new languages. Test by copying to %LOCALAPPDATA%\Diffractor\languages.

Tests: Built-in runner accessible via toolbar checkmark button when launched from Visual Studio. Press Escape to exit test mode.

Dependencies

Library Version Library Version
brotli 1.1.0 libjxl 0.10.3
bzip2 1.0.8 liblzma 5.4.6
dav1d 1.5.1 libmatroska 1.7.1
dng-sdk 1.7.1 libopenmpt 0.8.3
expat 2.7.1 libpng 1.6.50
ffmpeg main LibRaw 0.21.2
highway 1.3.0 libwebp 1.4.0
hunspell 1.7.2 minizip-ng 4.0.5
libarchive 3.8.1 parallel-hashmap 2.0.0
libde265 1.0.15 rapidjson main
libebml 1.4.5 skcms main
libexif 0.6.25 sqlite 3.50.4
libheif 1.18.0 utf-cpp 4.0.6
libjpeg-turbo 3.1.2 zlib-ng 2.2.5

About

The fastest photo and video organizer for Windows.

Resources

Stars

Watchers

Forks

Languages