Requirements
iOS Target | Xcode Version | Swift Version |
---|---|---|
iOS 15.0+ | Xcode 15.2+ | Swift 5.9+ |
🎉 v2 Now Available!
There are a few important housekeeping notes for those coming from v1.
- ⚒ Issues are managed in the v2 Project
- 📌 Pixel has been renamed Brightroom.
- 📖 Detailed documentation is available on Notion.
- 🎈 Help Wanted: CoreImage and Metal professionals!
- ⭐️ If you’re interested in v2, star the project to motivate us! 🤠
- 🪐 Brightroom’s state management is now powered by Verge.
Documentation
View the full documentation on Notion.
Built-In UI
BrightroomUIPhotosCrop.PhotosCropRotation
import SwiftUI
import BtightroomUIPhotosCrop
struct DemoCropView: View {
@StateObject var editingStack: EditingStack
@State var resultImage: ResultImage?
init(
editingStack: @escaping () -> EditingStack
) {
self._editingStack = .init(wrappedValue: editingStack())
}
var body: some View {
ZStack {
VStack {
PhotosCropRotating(editingStack: { editingStack })
Button("Done") {
let image = try! editingStack.makeRenderer().render().cgImage
self.resultImage = .init(cgImage: image)
}
}
}
.onAppear {
editingStack.start()
}
}
}
ClassicEditor
PixelEditViewController
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!