Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/FluidGroup/Brightroom

πŸ“· A composable image editor using Core Image and Metal.
https://github.com/FluidGroup/Brightroom

coreimage editor gpu hacktoberfest image instagram photo shader uikit vsco

Last synced: 3 months ago
JSON representation

πŸ“· A composable image editor using Core Image and Metal.

Awesome Lists containing this project

README

        

Brightroom


A full-featured composable image editor with a customizable UI -- all backed by the power of Metal.



| Image Editor | Photo Cropping | Face Detection | Masking |
| --- | --- | --- | --- |
| | | | |

## Features

- **Create your own image editor UI** by composing components.
- Components are built separately and run standalone using an `EditingStack`.
- `EditingStacks` **manage editing history** and render images. *It's like a headless browser!*
- Edit and render using [**P3 Wide Color** Gamut](https://instagram-engineering.com/bringing-wide-color-to-instagram-5a5481802d7d)
- Support for [Super Large Photosβ„’ (≀ 12000 pixels)](https://eoimages.gsfc.nasa.gov/images/imagerecords/78000/78314/VIIRS_3Feb2012_lrg.jpg).
- Previews and rendering backed with the power of **Metal**.
- Create custom-drawn **masks** on photos.
- Drop-in support for your own **custom filters using LUTs**.
- Load and download **remote images** for editing with a `URL`.
- Support for both UIKit and SwiftUI.

## Requirements

| iOS Target | Xcode Version | Swift Version |
|:---:|:---:|:---:|
| iOS 12.0+ | Xcode 12.4+ | Swift 5.3+ |

## Support the Project
Buy me a coffee or support me on [GitHub](https://github.com/sponsors/muukii?frequency=one-time&sponsor=muukii).


yellow-button

## πŸŽ‰ v2 Now Available!
There are a few important housekeeping notes for those coming from v1.

- βš’ Issues are managed in the [v2 Project](https://github.com/muukii/Brightroom/projects/2)
- πŸ“Œ Pixel has been renamed **Brightroom**.
- πŸ“– Detailed documentation is available [on Notion](https://www.notion.so/muukii/Brightroom-d4c59b37610a49de8a14131d24cd6162).
- 🎈 **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](https://github.com/VergeGroup/Verge).

## Installation

**Swift Package Manager**

```swift
dependencies: [
.package(url: "https://github.com/muukii/Brightroom.git", upToNextMajor: "2.2.0")
]
```

# Documentation

View the [full documentation](https://www.notion.so/muukii/Brightroom-d4c59b37610a49de8a14131d24cd6162) on Notion.

## Usage

**PhotosCropViewController**

```swift
// 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! 🀲*

```swift
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](https://github.com/muukii/Drip.app).

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

[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fmuukii%2FPixel.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fmuukii%2FPixel?ref=badge_large)