Skip to content
mrseanryan edited this page Jan 20, 2019 · 83 revisions

Done

chocolate-bars TODO

  • refactor: ex keyboard controller

  • fix orientation (need to read exif, and re-load the image) [works auto when viewed in new window]

  • could rotate in-browser, by adding css class (so no re-load) OR use library: (more reliable but slower - can have 'reverse' orientation) https://www.npmjs.com/package/jpeg-autorotate

  • add dev dependency + test script -> test images: https://github.com/recurser/exif-orientation-examples

  • (mitigated) fix: reading the JSON at same time as writing - add retry on read fail, after delay 1s


maintenance

  • avoid adding 1st page button until adding 2nd

  • add keyword electron

  • close stream after read exif

  • test img crafts from cal - if no small img, show orig

  • make input arg optional -> auto open browse

  • perf: stagger image rendering: q of groups - via yield? - a StaggeredPromise ?


more image formats (PNG, TIFF, GIF)

[done] PNG

  • resizing sharp (PNG, JPEG)

  • histogram histogram - JPEG PNG

  • exif not fully supported in PNG! exif tags ref: http://www.exiv2.org/tags.html

  • google API PNG8 PNG24

TIFF

GIF

video: take 1st frame


more features

  • (dangerous!) listen for delete key

  • allow copy as alt to move

  • add -subDirs option, then only write json on toggle star. Test for cals.

  • stars should be for this page only on move, copy

  • on move or delete, do not refresh the page, just update this page. Test nav back/fwd

  • allow collapse detail pane - store state. Also add as cli option.

  • ?(stars makes this obsolete) multi select, 'Move' button -> moves to folder, refreshes

  • (image-checker?) detect missing color space - ref http://exif.regex.info/exif.cgi


persistence


rebuild! - better installer, UI

  • try rebuild via electronforge

https://electron-react-boilerplate.js.org/docs/en/packaging


future

  • add advanced paging (by dates)
  • get mod time of all images (use exif if available - but perf!)
  • page by time range - div N sections make labels from moment.js
  • N = 12 ? (or less if less images)
  • cloud of 'date' tags at right of images
  • ? add searching - at least by filename

  • view switch to master / detail - master is just grid of images