1.4.1 • Published 6 years ago

@brencon/organize-photos v1.4.1

Weekly downloads
1
License
MIT
Repository
github
Last release
6 years ago

organize-photos

Organizes your photos and videos.

Build Status

NPM

Overview

  1. Takes a src dir and copies everything to a dest dir
  2. Every file copied is cleaned up with the following
    1. Lowercase file extension
    2. Removes trailing #5 and (3) from filenames
  3. If a file is not a recognized type it is moved to dest/UNKNOWN
  4. If a file has no date associated, it is moved to dest/UNSORTED
  5. If a file does have a date, it is moved to dest/yyyy/mm/dd/yyyy-mm-dd hh:mm:ss.ext
  6. Dates are found by the following
    1. exif CreateDate field
    2. Any other exif fields passed in with exifDate
    3. Some special filenames like screenshots or photobooth files
    4. If the file is named like yyyy-mm-dd hh?:mm?:ss?
    5. A parent directory that is named like yyyy-mm-dd hh?:mm?:ss?
  7. If no exif dates are found, but a date is found from the path, that will be written to exif data
  8. Files are never clobbered but instead a-z is appended to the destination until there are no conflicts
  9. By default, everything is a dry run (can be changed with real)
  10. By default, dest is never cleared but always added to (can be changed with clean)
  11. Can optionally move all the files instead

Installation

CLI

npm install @brencon/organize-photos -g

Module

npm install @brencon/organize-photos --save

Usage

Examples

Dry Verbose JPG and PNG Sorted by DateTimeOriginal, CreateDate, FileCreateDate

organize-photos --src <source folder> --dest <destination folder> --verbose true --exif-date "DateTimeOriginal" "CreateDate" "FileCreateDate" --ext "jpg" "png"

Development

Prerequisites

Windows

win-node-env

On Windows, you will encounter the error "'NODE_ENV' is not recognized as an internal or external command, operable program or batch file." when running npm scripts.

win-node-env creates a NODE_ENV.cmd that sets the NODE_ENV environment variable and spawns a child process with the rest of the command and its args.

npm install -g win-node-env

Testing

npm test

License

MIT

Contributor

Brendan Conrad

Original Project Owner

Luke Karrys