MJ Studio

Android

I started mobile application development with Android. But it is so far to me now.

Happic

Since 2021 - 07

Contribution 45%

Happic-image-1
Happic-image-2
Happic-image-3

This is a team that participated in the 30th Sopt app jam. This is a platform where you can write your daily diary in a simple card format and save rewards, photos, etc. There are also elements that develop characters, such as the moon and clouds. I was in charge of Android development. There has been a lot of development, but it has not been released.

Features

Social LoginRecord daily diary

Tech

KTXSplash ScreenLottieRetrofitFlipperKotlin SerializationDexter

Languages

Kotlin

Weathy

Since 2021 - 01

Contribution 40%

Weathy-image-1
Weathy-image-2
Weathy-image-3

This is a project carried out in charge of Android development at the 27th SOPT App Jam. Basically, it is a service that provides the weather, records outfits and emotions for each weather, and allows you to receive notifications about similar weather. Demonstration video https://www.youtube.com/watch?v=GiWxNUl2zTo This page was organized by a designer who worked on the project together. https://leeyeseul.tistory.com/43#:~:text=%EC%9B%A8%EB%94%94%EB%8A%94%2C%20%EA%B7%B8%EB%9F%B0%20%EC%88%98%EC%B9%98%ED%99%94%EB%90%9C,%EC%B2%B4%EA%B0%90%20%EC%A0%95%EB%B3%B4%EB%A5%BC%20%EB%8F%8C%EB%A0%A4%EC%A4%80%EB%8B%A4

Features

Fancy Weather emotional application

Tech

AndroidFirebase

Languages

Kotlin

Fundito

Since 2019 - 12

Contribution 33%

Fundito-image-1
Fundito-image-2
Fundito-image-3
Fundito-image-4
Fundito-image-5

This is an application called Fundito that was developed while participating in the 25th class of SOPT, a university IT start-up club, and holding App Jam, a mid-term camp hackathon. Fundito was about investing in the restaurant you wanted and doing something, but I don't remember the plan. I remember using Coroutine, which I was studying, to my heart's content and beautifully implementing architecture and asynchrony. We also developed a CustomView for various investments. We also developed a View that turns the investment dial on the attached image and a Custom View that displays a graph showing how much has been invested. At this time, MotionLayout was used on the restaurant details screen to express a Collapsing effect that gives a CoordinatorLayout-like effect. This was my first time using MotionLayout, an advanced version of ConstraintLayout, and it was really fun. We have also implemented a function that allows you to make an investment by obtaining the SSID depending on the current WIFI connection status and checking whether the restaurant is using the WIFI.

Features

Invest restaurantView restaurant informationsRegister pay methodSearch restaurantFacebook authenticationView my profileUpdate my profileCustom viewsFacebook shareSplashView investment feedHomePush notificationWifi connection

Tech

Android Material DesignKotlin STLConstraintLayoutViewModelLiveDataRoomGsonOkHttp3Retrofit2GlideTimberDagger2DexterKotlin CoroutineCoroutine Flow BindingFirebase AuthFacebook AuthFirebase FCMCircleImageViewJUnit4MockitoGoogle Truth

Languages

Kotlin

BEATFLO

Since 2019 - 10

Contribution 70%

BEATFLO-image-1
BEATFLO-image-2
BEATFLO-image-3
BEATFLO-image-4

Bitflow is an application developed by Choreography Factory, Inc. Bitflow is a revenue-generating platform for non-mainstream dancers, influencers, and musicians. During the development process, we had a lot of trouble handling video-related tasks. Basically, most of the functions of AAC were used and developed with an MVVM structure. Currently, View Binding is supported starting from Android Gradle 3.6, but since we developed with 3.5, we structured the architecture using data binding as much as possible. We were able to easily handle background asynchronous tasks by actively utilizing WorkManager (RxWorker) in processing such as video uploads. As an aside, Kotlin is really easy to use and is the most complete language.

Features

Record videoVideo feedVideo post processingSocial authentication flowReport content

Tech

FFMPEGExoPlayerData BindingViewModelLiveDataRxJava2KoinRoomWorkManagerRetrofitCameraX

Languages

Kotlin

Pick Place

Since 2019 - 08

Contribution 25%

Pick Place-image-1
Pick Place-image-2
Pick Place-image-3
Pick Place-image-4

This is an entry in the Seoul City App Contest. I was eliminated from the preliminaries. I worked quite hard on it. I created a custom MapFragment using the Google maps API and captured the location using the Reverse geocoding API. It was a long time ago, so I don't remember what features were included, but it was a quite fun project to participate in.

Features

Email SignUp & SignInView Seoul travel coursesCreate custom courseView ProfileUpdate ProfileSearch courses & places

Tech

Android Material DesignKotlin STLConstraintLayoutKTXRoomRetrofit2GsonRetrofit logging interceptorGlideAutoFitTextViewViewPager2PageIndicatorViewNumberMarbleViewCircleImageViewGoogle places APIFirebase analyticsAndroid map utilityFirebase dynamic linkViewModelLiveDataKoinDexterMultidexKotlin reflectJunitAndroid test frameworkEspressoRobolectricGoogle truth

Languages

Kotlin

Favorite

Since 2019 - 06

Contribution 100%

Favorite-image-1
Favorite-image-2

This was our first outsourced development, and we did it because they preferred a diary-like design. I created the server myself with Django DRF.

Features

Store favorite websites

Tech

Django DRFRetrofitLandscape support

Languages

KotlinPython

SOVS2

Since 2019 - 05

Contribution 100%

SOVS2-image-1
SOVS2-image-2
SOVS2-image-3
SOVS2-image-4
SOVS2-image-5
SOVS2-image-6
SOVS2-image-7
SOVS2-image-8

Following SOVS, SOVS2 was also released, and unlike SOVS, which was distributed for a fee, it was equipped with the function of selling packs through IAP. In addition, it was released not only on the Play Store but also on the Galaxy Store and One Store, abstracting the IAP process. I wasn't very good at developing camera performance, but managing the common modules of SOVS and SOVS2 in one project and building and distributing them as application modules was quite a new experience. I also liked the abstraction architecture used in the process of attaching multiple IAPs. The company is now bankrupt.

Features

IAPTake a pictureCamera rotationSave & Load gallery picturesImage post processing

Tech

ViewModelLiveDataDagger2Data BindingRxJava2RenderScriptNavigation ComponentGoogle Play store IAPGalaxy store IAPOne store IAP

Languages

Kotlin

SOVS

Since 2019 - 03

Contribution 100%

SOVS-image-1
SOVS-image-2
SOVS-image-3
SOVS-image-4
SOVS-image-5
SOVS-image-6
SOVS-image-7

This is the first Android app I developed properly. Android is the first platform on which I developed an actual product at my company, and I studied it for about 4 months at the time. Because it was a camera utility app, there wasn't much to worry about architecturally, but I studied a lot by carefully applying the first architectural methodologies. I should have saved the camera, post-processed the image, and saved it in the gallery, but I had a lot of trouble because I had no understanding of the concept of real-time filtering using image processing, and the result was not good. I seriously considered learning OpenGL on my own, but I was able to implement some of the functions myself using Android's RenderScript API. C99 is an amazing language. When I was at the company, I developed SOVS 1, 2, Android and iOS alone and managed 4 of them.

Features

Take a pictureCamera rotationSave & Load gallery picturesImage post processing

Tech

ViewModelLiveDataDagger2Data BindingRxJava2RenderScriptNavigation Component

Languages

Kotlin

GIST - Free Friday!

Since 2019 - 01

Contribution 100%

GIST - Free Friday!-image-1
GIST - Free Friday!-image-2
GIST - Free Friday!-image-3
GIST - Free Friday!-image-4
GIST - Free Friday!-image-5
GIST - Free Friday!-image-6
GIST - Free Friday!-image-7
GIST - Free Friday!-image-8

Around 2019, I learned Android development technology and developed an application at GIST, the school I attend, to make it easy to schedule and share class information and to enable pre-registration to prevent course registration wars. At that time, many students used it. I'm still not good at it, but since I couldn't develop any more, I had no idea how to do full-stack development. So I borrowed a lot from Firebase, and because I wanted to create a REST API, I studied DRF separately and built a server. This is an application that contains a lot of memories. I did all the design, starting with the logo design, so it's just hideous.

Features

GIST student timetablePush NotificationAuthentcationSearch classesView class informationsSettingsView notice

Tech

Kotlin CorutineFirebase FCMRxJava2ViewModelRoomKTXAndroid material designCustom viewDjango Rest FrameworkFirebase Realtime Database

Languages

Kotlin