Classic Image Editor | PhotosCrop | Face detection | Masking component |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
โ Issues are managed in v2 project
๐ Pixel has been renamed as Brightroom
๐ Wanted CoreImage and Metal professional! Please help us, we have issues that we don't know how to solve. (help wanted in Issues)
โญ๏ธ If you interested in v2, hit the Star button to motivate us! ๐ค
๐ช Brightroom's state management powered by Verge.
- Components are built separately and run standalone using an
EditingStack
. - Create your own image editor UI by composing components.
EditingStack
manages the history of editing and renders images. It's like a headless browser.- Headless rendering with using
EditingStack
- Wide color editing supported
- Super large photo (12000px) supported (But exporting takes so long time for now.)
- Blazing fast previewing by Metal power.
- Drawing supported - masking blurry
- Creating your own filter with LUT
- Opening the image from URL
- Supported UIKit and SwiftUI
- Downloading image supported
- Swift 5.3 (Xcode12.4+)
- iOS 12+
PhotosCropViewController
// Creating image provider
let imageProvider: ImageProvider = .init(image: uiImage) // url, data supported.
// Creating view controller
let controller = PhotosCropViewController(imageProvider: imageProvider)
// Setting up handling after editing finished.
controller.handers
Not sophisticated API.
Please help us ๐คฒ
let editingStack: EditingStack
SwiftUIPhotosCropView(editingStack: editingStack, onCompleted: {
let image = try! editingStack.makeRenderer().render().swiftUIImage
})
This repository contains a demo application.
You can see many demonstrations of what Brightroom can perform and experiments in technology.
![]() |
CocoaPods
pod 'Brightroom/Engine'
pod 'Brightroom/UI-Classic'
pod 'Brightroom/UI-Crop'
Swift Package Manager
dependencies: [
.package(url: "https://github.com/muukii/Brightroom.git", exact: "2.2.0")
]
Brightroom is available under the MIT license. See the LICENSE file for more info.