Skip to content

Latest commit

 

History

History
16 lines (11 loc) · 1.77 KB

README.md

File metadata and controls

16 lines (11 loc) · 1.77 KB

build and test codecov Project Status: WIP – Initial development is in progress, but there has not yet been a stable, usable release suitable for the public.

Mocca - a More Controllable Camera App for iOS

Mocca - the MOre Controllable Camera App - is a minimalist stills-only iOS camera. Its design goal is to appeal to those accustomed to manual photography who often want more predictable control than the stock iOS camera app affords. With Mocca you must set the focus/exposure point yourself and — unlike the stock iOS app — it stays where you put it, instead of resetting itself on a whim just as you're about to hit the shutter button.

Mocca is a work in progress, but the main branch is always in a useable state. It's currently very simple, with a camera preview, shutter button, live histogram and tap-to-set focus/exposure reticle. Drag your finger up or down in the camera preview to adjust exposure compensation.

About the code

Mocca is written entirely in Swift + SwiftUI and based on the MVVM pattern. Abstraction of client code from hardware dependency is done chiefly via dependency inversion (the 'D' in SOLID), to push untestable AVFoundation code as far down as possible.

The main goal of Mocca is a clean, highly testable codebase: new features will be added only when existing features have sufficient test coverage.

Upcoming features

  • Physical-camera selection for multiple-camera devices