// Create an image provider
let imageProvider = ImageProvider(image: uiImage) // URL, Data are also supported.
// Create a Photo Crop View Controller
let controller = PhotosCropViewController(imageProvider: imageProvider)
// Set up handlers when editing finishes
controller.handers
SwiftUI Support (BETA)
The SwiftUI API is still in-progress and may not be production ready. We’re looking for help! 🤲
let editingStack: EditingStack
SwiftUIPhotosCropView(editingStack: editingStack) {
let image = try! editingStack.makeRenderer().render().swiftUIImage
}
Demo & Full App
There is an entire open-source and production-ready app available on the App Store that uses Brightroom. It’s called Drip.
This repository also contains a demo app which demonstrates what Brightroom can perform and showcases some easy experiments. Clone this repo and build the project to try it out!
License
Brightroom is available under the MIT license. See the LICENSE file for more info.
Brightroom
A full-featured composable image editor with a customizable UI -- all backed by the power of Metal.
Features
EditingStack
.EditingStacks
manage editing history and render images. It’s like a headless browser!URL
.Requirements
Support the Project
Buy me a coffee or support me on GitHub.
🎉 v2 Now Available!
There are a few important housekeeping notes for those coming from v1.
Installation
CocoaPods
Swift Package Manager
Documentation
View the full documentation on Notion.
Usage
PhotosCropViewController
SwiftUI Support (BETA)
The SwiftUI API is still in-progress and may not be production ready. We’re looking for help! 🤲
Demo & Full App
There is an entire open-source and production-ready app available on the App Store that uses Brightroom. It’s called Drip.
This repository also contains a demo app which demonstrates what Brightroom can perform and showcases some easy experiments. Clone this repo and build the project to try it out!
License
Brightroom is available under the MIT license. See the LICENSE file for more info.
Status