Awesome
<!--Hero Image--> <p align="center"> <picture> <img alt="MijickCamera Hero" src="https://github.com/Mijick/Assets/blob/main/Camera/hero.png" width="100%"> </picture> </p> <!--Text Header--> <p> <h3 align="center">Camera made simple</h3> <p align="center">Significantly reduces implementation time and effort. Keeps your code clean.</p> </p> <!--Links: Demo, Wiki, Roadmap--> <p align="center"> <a href="https://link.mijick.com/camera-demo" rel="nofollow"><b>Try demo we prepared</b></a> | <a href="https://link.mijick.com/camera-wiki" rel="nofollow"><b>Framework documentation</b></a> | <a href="https://link.mijick.com/camera-roadmap" rel="nofollow"><b>Roadmap</b></a> </p> <br> <!--Labels--> <p align="center"> <img alt="Labels" src="https://github.com/Mijick/Assets/blob/main/Camera/labels.svg"/> </p> <br> <!--GIFs--> <table> <thead> <tr> <th>Camera Position</th> <th>Media Capturing</th> <th>Gestures</th> <th>Filters</th> </tr> </thead> <tbody> <tr> <td> <img src="https://github.com/Mijick/Assets/blob/main/Camera/Gifs/Camera-1.gif"/> </td> <td> <img src="https://github.com/Mijick/Assets/blob/main/Camera/Gifs/Camera-2.gif"/> </td> <td> <img src="https://github.com/Mijick/Assets/blob/main/Camera/Gifs/Camera-3.gif"/> </td> <td> <img src="https://github.com/Mijick/Assets/blob/main/Camera/Gifs/Camera-4.gif"/> </td> </tr> </tbody> </table><br><br>
<!--Buttons--> <p> <!--Discord--> <a href="https://link.mijick.com/discord"> <img alt="Join us on Discord" src="https://github.com/Mijick/Assets/blob/main/Common/Buttons/discord.png" height="40px"> </a> <!--Linkedin--> <a href="https://link.mijick.com/linkedin"> <img alt="Follow us on LinkedIn" src="https://github.com/Mijick/Assets/blob/main/Common/Buttons/linkedin.png" height="40px"> </a> <!--GitHub--> <a href="https://link.mijick.com/github"> <img alt="See our other frameworks" src="https://github.com/Mijick/Assets/blob/main/Common/Buttons/github.png" height="40px"> </a> <!--Medium--> <a href="https://link.mijick.com/medium"> <img alt="Read us on Medium" src="https://github.com/Mijick/Assets/blob/main/Common/Buttons/medium.png" height="40px"> </a> <!--Buymeacoffee--> <a href="https://link.mijick.com/buymeacoffee"> <img alt="Buy us a coffee" src="https://github.com/Mijick/Assets/blob/main/Common/Buttons/buymeacoffee.png" height="40px"> </a> </p> <!--Features-->β¨ Features
<table><tbody> <tr> <td>ππ»</td> <td>Automatically handles permissions</td> </tr> <tr> <td>πΌοΈ</td> <td>Image capture</td> </tr> <tr> <td>π¬οΈ</td> <td>Video capture (with or without sound)</td> </tr> <tr> <td>πΈ</td> <td>Camera position changes</td> </tr> <tr> <td>ποΈ</td> <td>Supports manual zoom</td> </tr> <tr> <td>ποΈ</td> <td>Supports manual focus</td> </tr> <tr> <td>ποΈ</td> <td>Changeable frame rate</td> </tr> <tr> <td>πΊοΈ</td> <td>Changeable camera resolution</td> </tr> <tr> <td>π</td> <td>Camera filters</td> </tr> <tr> <td>π¦</td> <td>Torch</td> </tr> <tr> <td>πΈ</td> <td>Flash</td> </tr> <tr> <td>β±οΈ</td> <td>Other camera settings (exposure duration, target bias, ISO, HDR mode and more)</td> </tr> <tr> <td>β’οΈ</td> <td>Displays error screen if permissions are not granted</td> </tr> <tr> <td>πΌοΈ</td> <td>Displays captured media screen</td> </tr> <tr> <td>π±</td> <td>Modern and minimalistic UI</td> </tr> <tr> <td>πΊ</td> <td>Beautiful animations</td> </tr> <tr> <td>π§</td> <td>Fully customizable screens</td> </tr> <tr> <td>π€πΌ</td> <td>Gestures support</td> </tr> <tr> <td>π²</td> <td>Blocks screen orientation change</td> </tr> <tr> <td>β‘οΈ</td> <td>Supports Swift 6</td> </tr> <tr> <td>π</td> <td>... and others</td> </tr> </tbody></table> <!--Description-->βοΈ Why MijickCamera?
The main problem we wanted to solve was the complexity of implementing camera into Swift projects; to get a camera view, you either have to accept a number of trade-offs or spend hours wrestling with the complexity of the AVKit framework. Here is why we think we have successfully solved the problem:
<p> <h3>The power of simplicity</h3> <p>Thanks to a modern and minimalistic UI and a thoughtfully designed public API, the most common use cases can be solved with just a few lines of code.</p> <img alt="Code Example 1" src="https://github.com/Mijick/Assets/blob/main/Camera/Code/power-of-simplicity.png" width="100%"> </p> <p> <h3>Three in one</h3> <p>MCamera contains three screens - Error Screen, Captured Media Screen and Camera Screen - making the process of handling camera states super easy. Moreover, MijickCamera automatically manages the entire workflow, from requesting camera permissions to displaying the results of camera captures!</p> <img alt="Code Example 4" src="https://github.com/Mijick/Assets/blob/main/Camera/Code/three-in-one.png" width="100%"> </p> <p> <h3>Engineered for limitless creativity</h3> <p>Every application is a special one, and we at Mijick know this very well, thus we have given you the possibility to customize each of the three screens that constitute MCamera.</p> <img alt="Code Example 1" src="https://github.com/Mijick/Assets/blob/main/Camera/Code/limitless-creativity.png" width="100%"> </p>There is much more besides:
- Advanced camera controls.
- Gesture support.
- Thoroughly designed animations.
- Supports Swift 6.0.
- ... and much more.
π How to use it?
Visit the framework's documentation page to learn how to integrate your project with MijickCamera.
<!--Community-->π Community
Join the welcoming community of developers on Discord.
<!--Contribution-->πΌ Contribute
To contribute a feature or idea to MijickCamera, create an issue explaining your idea or bring it up on Discord. <br> If you find a bug, please create an issue. <br> If you would like to contribute, please refer to the Contribution Guidelines.
<!--Sponsorship-->π Sponsor our work
Support our work by becoming a backer.