Happy Photon: a simple photo workflow for RAW and JPEG — critique wanted

Greetings folks!

I wanted to share a new photo app that I developed, mostly to solve my own desire for the simplest possible workflow that worked for me. I’m hoping it is more broadly useful or interesting to the community.

After many years doing a lot of processing with many different apps and workflows, where I shot only RAW, I’m now settled into a RAW+JPEG workflow, where I am more and more happy with the camera JPEG processing. I wanted an app that would be super fast at helping cull images and identify keepers, then be able to do quick edits in composition, some tweaks to exposure, tone curve, etc. and then export final images. And, feel familiar to software that I was already used to.

Happy Photon is open source GPL-3.0-or-later, works locally without an account or subscription, and currently targets Windows x64, Linux x64, and Apple Silicon macOS. The Windows app downloads from Microsoft Store, and the Mac OS app download is signed and notarized via Apple Developer.

GitHub repo: GitHub - seasalim/happy-photon: Photo editing, simplified. An open-source RAW and JPEG workflow. · GitHub

Global website with download links: https://happyphoton.app

The RAW handling is very basic. It is not intended to reproduce the depth of darktable or RawTherapee or other focused RAW processing applications. It currently lacks local masks, lens correction, layers, HDR output, custom output profiles, and other features. The RAW decoding also uses LibRaw 0.21.1 (circa 2023), so camera compatibility — not just file extension — is something I would be especially interested in getting feedback on.

I would value critique of:

  • the overall project
  • whether the folder-to-export workflow feels coherent
  • which camera and capture combinations work or fail
  • which missing global control most limit quick everyday edits
  • any other general features

The app also contains an optional, off-by-default AI agent experimental feature. It is not required and is not the subject of this post; only mentioned for transparency. Also - the app itself is AI developed - not vibe coded, but guided with extensive software experience and has been through multiple rounds of inspection and refactoring, including security reviews with the latest models.

Thanks again for your interest and any feedback!

-Salim

5 Likes

Congratulations on picking a very fun and friendly name :-)!

2 Likes

Cute name :slight_smile:

Had a quick poke and it looks very promising. Here’s some initial feedback:

  • Add a background task indicator. It consumes a lot of CPU and GPU even when not doing anything, but there’s no indication why or when it might finish
  • Add color labels
  • Support reading and writing XMP files, for integration with other software. Let user choose between filename.xmp and filename.ext.xmp
  • Pre-render photos in the current folder. Right now moving to the next photo for the first time is slow
  • True monochrome raws are not fully supported. Example: DNG File from Leica Q2 Monochrom - Winter hollow way
  • Add a raw histogram
  • Waveform would be very nice as well
  • CTL scripts support would let the user make their own processing tools: GitHub - aces-aswf/CTL: The Color Transformation Language (CTL) · GitHub
  • Add a mid-grey theme
  • Add a color assessment mode, similar to darktable, with a mid-grey canvas and white border. Both in Develop and full screen
  • When more than one photo is selected, restrict full screen (F) to that selection

I think that was everything for now :sweat_smile:

@Donatzsky Thanks much for taking a look and the detailed feedback! That’s really a great list. Some of the items are on my current backlog, so a dot release with many of these should be happening in the near future.

1 Like

Another thing: Please don’t litter. The Happy Photon Catalog folder has no business being in Pictures. On Linux the assets subfolder should be under ~/.cache while presets and catalog.db should be under ~/.config. On Windows there’s %AppData% for this and MacOS has some similar locations.

Thanks @Donatzsky for another good feedback. This is an interesting one. Currently, Pictures is intentional. It sits alongside my Lightroom and Capture One Catalogs, both of which landed there (I believe, by default). It helps with backup flow, where my automated Pictures backup just gets the catalog by default. But thats very much my flow, not others. So this is something I’ll look at making a configurable and visible part of on-boarding so there is optionality available.

The way I see it, programs shouldn’t put anything in Documents, Pictures etc. unless it’s something I, as a user, would have an active interest in. Cached thumbnails, in particular, are just utterly irrelevant and only serve to pollute in other programs. The catalog I could maybe see a justification for, although I still don’t want it.

I agree. Do not do that, even though other apps and Microsoft itself may sometimes do it. It is bad practice.

Configuration is good practice. Both for people who may need it and for people who want to know where the breadcrumbs are.

1 Like

On Windows the cache should probably go in %LocalAppData%. And here are the Linux locations: XDG Base Directory - ArchWiki

Thanks @afre and @Donatzsky - will fix!

Hi folks! I’m back with an update - Happy Photon v0.1.2 is released!

@Donatzsky, it’s got a bunch of your wishlist asks, would appreciate any updated feedback if you get the chance.

Some of the key updates in 0.1.2:

  • Lightroom Classic import - ratings, flags, and color labels.
  • Opt-in XMP sidecar read/write using standard Adobe metadata.
  • Native color labels support.
  • Platform-standard catalog and cache locations.
  • New Middle Gray theme and color assessment mode.
  • Library assessment actions are now selection-aware.
  • Selection-only full screen review.
  • More compact Library filter bar.
  • Dedicated Library review pane.
  • Small, Medium, and Large Library thumbnail sizes.
  • Cloud-source safety: never silently download online-only originals.
  • Background-activity indicator (and fixed performance bug that was using CPU/GPU at idle).
  • Manual channel-aware update check.
  • Improved keyboard navigation so Library focus and selection move together predictably.
  • Polished Library selection and active-image feedback.
  • and more…

More coming soon - update to LibRaw 0.22.2, upgraded RAW pipeline, and more.

One quick note on catalog location - it defaults to Pictures but easy to change to different location (picking Change will default to LOCALAPPDATA/standard location and option is available in both First Run and via Settings dialog). Cache is always split out. If you have older Happy Photon catalog, please either delete it to get the new first run experience (recommended), or manually change your locations via the Settings menu.

Would also welcome feedback and any test/bug reports on the Lightroom import and XMP interop.

Full changelog:Comparing v0.1.1...v0.1.2 · seasalim/happy-photon · GitHub

Thanks,

-Salim

2 Likes

Wow I can’t believe I missed this project , looks nice. The UI looks very similar to the safelight raw editor.

1 Like

Thanks @Nexis4Jersey. Safelight looks very impressive! A bit different directionally from HP.

I played with the app so more and noticed that whenever I scroll zoom it goes into the left corner. Aside from that its a nice simple raw editor that I can recommend to people who don’t want more then a simple edit.

Thanks much for the feedback and report @Nexis4Jersey ! The scroll zoom issue is fixed and will be in the next release, coming soon.

1 Like

Hi folks! It’s me again, reporting on a new 0.2.0 release of Happy Photon.

@Donatzsky - this should have all of your wish list items (except CTL scripts) included.

@Nexis4jersey - this should fix the zoom issue you reported - zoom is now cursor aware and better behaved.

Highlights -

  • Substantially rebuilt and unified rendering pipeline
  • LibRaw updated from 0.21.1 to the latest 0.22.2 release
  • Color processing moved from Libraw to Happy Photon control
  • Wide-gamut (Rec.2020) working space through pipeline
  • New scene-referred AgX tone engine
  • True monochrome RAW file support
  • RAW sensor histogram and luminance waveform
  • Highlight and shadow clipping overlays
  • Eight-band HSL color mixer
  • Per-channel RGB curves
  • Highlight recovery and detail controls
  • Vignette, and film grain effect
  • DCP camera profile support (profiles available via free Adobe DNG Converter)
  • Embedded lens correction (initial feature - DNG only currently)
  • Export adds Display P3, lossless 16-bit TIFF
  • Screen and print output sharpening options
  • Opportunistic pre-rendering/caching (improved preview responsiveness)

The goal for the editing surface is to not only be fast and friendly for beginners, but also be comfortable and familiar for pros as well.

The optional AI agent feature mentioned in the original post has been removed. Happy Photon 0.2.0 is focused entirely on the local photo workflow.

Updated downloads are available from https://happyphoton.app

Appreciate any feedback on the new controls, RAW compatibility and rendering, responsiveness, or any other overall comments.

Thanks again for taking an early look!

-Salim

2 Likes

I think you’ve largely nailed it on the editing side & the zooming works smoothly. I do have a few suggestions to add to your app.

I would add being able to remove a photo from the catalog or delete it off disk with a right click action in the library section like it is in Adobe.

I would add a rotate , crop and perspective section similar to what is in recent versions of Adobe or What Darktable has.

I would have a dedicated export section sitting on the left panel just under the presents section. Or a popup panel like on lightroom.

Are there any plans for flatpak support or moving to an Appimage?

Thanks for the great feedback @Nexis4Jersey! Great to hear the feedback on the edit surface and that zoom is working well. On the other items: Export revamp is already on the roadmap and will happen shortly. I will add a Geometry section, file system operations (like delete), and AppImage to the roadmap as well and hope to get these out soon!

One note on the “Remove from catalog”. HP does not have a catalog like Lightroom, it operates on existing folder structure. Could you clarify the scenario you are interested in further if it is something other than a simple filesystem delete / move to recycle bin operation?

1 Like

I don’t know why said catalog , I should have said the Library view.

1 Like

@Nexis4Jersey - HP 0.2.1 is out and it covers everything on your list:

  • Right-click in Browse now has various operations including delete
  • There is a new Geometry group in Develop with perspective, aspect, and distortion controls
  • Export is now a third workspace next to Browse and Develop, with more options including initial soft proofing capability
  • Linux releases now ship with AppImage

A few other things landed as well:

  • RAW+JPEG pairs can be treated as one capture in Browse
  • Per-file versions (virtuals) are now supported
  • Added a synchronized compare (X|Y in Browse, Y|Y before/after in Develop)
  • Extended the optics module with current Lensfun db corrections
  • Added wavelet luminance noise reduction

Downloads as usual from Happy Photon — Photo Editing, Simplified

Thanks again for the concrete feedback - look forward to hearing what you think of the new additions!

3 Likes