Project

Photo Editor

Challenging
105 completions
~ 31 hours
4.2

Learn how to work with photos in Android, use coroutines, and edit your image pixel by pixel. Get more familiar with handling Android native intents.

Provided by

JetBrains Academy JetBrains Academy

About

Everyone has tried editing photos and pictures in an editor. Most of them are paid or filled with ads. Why not create one and add every possible feature that comes to mind? In this project, create a simple photo editor that allows you to pick any photo from your device, apply basic filters, and save the result.

Graduate project icon

Graduate project

This project covers the core topics of the Android Developer with Kotlin course, making it sufficiently challenging to be a proud addition to your portfolio.

At least one graduate project is required to complete the course.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Make your image lighter or darker by implementing the brightness filter.
Add the save button and see changes in your gallery.
Add another filter — the contrast one.
Add two more filters — saturation and gamma. They will give you more control over an image.
Use coroutines and make your app more responsive, removing all UI freezes and lags.

Reviews

Alfredo Edmilson Cardoso Junqueira avatar
Alfredo Edmilson Cardoso Junqueira
2 months ago
My favorite project, in my opinion. I really enjoyed using coroutines.
Gerson Santos da Silva avatar
Gerson Santos da Silva
2 months ago
In this project, I learned how to apply image filters like brightness, contrast, saturation, and gamma at the pixel level. I also gained experience with Kotlin coroutines, separating heavy computations from UI updates. Debugging the filter logic was challenging, but it helped me improve my problem-s ...
Pham Quoc Khanh avatar
Pham Quoc Khanh
4 months ago
I had learnt some nice concept about image filtering as well as implementing coroutines to perform asynchronouse operations which help avoid UI freeze

4.2

Learners who completed this project within the Android Developer with Kotlin course rated it as follows:
Usefulness
4.3
Fun
4.0
Clarity
4.1