Classic Image Editor | PhotosCrop | Face detection | Masking component |
---|---|---|---|
💥 v2.0.0 development is still early development. We have a lot of known issues.
⚒ 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.
Tinder |
---|
CocoaPods
pod 'Brightroom/Engine', '2.0.0-alpha.8'
pod 'Brightroom/UI-Classic', '2.0.0-alpha.8'
pod 'Brightroom/UI-Crop', '2.0.0-alpha.8'
Swift Package Manager
dependencies: [
.package(url: "https://github.com/muukii/Brightroom.git", exact: "2.0.0-alpha.2")
]
Brightroom is available under the MIT license. See the LICENSE file for more info.