AOS Hackathon 
Tags: android, devjournal, kotlin, github
Published: 2021-07-25 09:22:05





## Participated in Hackathon for Android Developer

> 2021.06.27 ~ 2021.07.17 

### Journey, happy mate who will wake up your lost daily life 
> Journey remind us of things that are important in our daily lives but are forgotten. Journey's unique concept helps users to develop a habit of finding happiness by easily approaching them in their daily life. Users can receive daily greetings via push notifications, and complete random challenges. Also, you can record your own diary and share your small events with other users in Journey's community feed. 
[Journey's Preview](https://www.youtube.com/watch?v=3Yg3qSHMRtY) 

<details>
	<summary>

## Open Source Library

</b><br></summary>
	
| Library                                                   | Purpose                                                   |
| ------------------------------------------------------------ | ------------------------------------------------------- |
| [Activity-KTX](https://developer.android.com/kotlin/ktx/extensions-list) | Activity ViewModel              |
| [Fragment-KTX](https://developer.android.com/kotlin/ktx/extensions-list) | Fragment Shared ViewModel      |
| [Jetpack Navigation](https://developer.android.com/jetpack/androidx/releases/navigation) | Fragment Transition                               |
| [LifeCycle](https://github.com/ausichenko/android-lifecycles) | Fragment Lifecycle                               |
| [LiveData](https://github.com/ravi8x/LiveData)                   | LifeCycleOwner         |    
| [Retrofit2](https://github.com/square/retrofit)              | Retrofit                                               |
| [Gson](https://github.com/google/gson)                       | Json to Gson               |
| [OkHttp](https://square.github.io/okhttp/)                   | Retrofit2 Token Interceptor &  Util |
| [Firebase](https://firebase.google.com/)                     | Google FCM                                             |
| [Hilt](https://developer.android.com/jetpack/androidx/releases/hilt) | DI                        |
| [Glide](https://github.com/bumptech/glide)                   | URL Image           |       
</details>


## Main Service

**1. Push Notification**
> ### Process
>  **FCM ,  Firebase Push Notification** 
>  **Tools-> Firebase -> Cloud messaging** 
	 (1) Connect your app to firebase 
	 (2) Add FCM to your app 
	 (3) Firebase -> My Console -> Clouding Messaging -> Add Your Application -> Connect 
	**FirebaseMessagingService class File** 
	**Get your application Token**

**2. Random Challenge & Course**

> ### Process 
>  User can select one day, two day, three day.. etc challenge. According to date, Journey provide users different stamp views.  
> Then, users select challenge view and check mission. 
> When they complete random challenge we give them congrats dialog message. 
> Otherwise if user do not complete challenge, we give them lightening dialog message.
	
**3. Community Feed & Diary**

>### Process
> User can browse other users feed,  click their posts and give them likes. Also we provide feed from the latest or like order. 
> In diary , user can write their small events from daily life privately. 

## Workflow 

<img src="https://user-images.githubusercontent.com/28949235/125825984-5d6087d6-e8bd-4b4b-8ad8-004736141a6d.png" />
 <img src="https://user-images.githubusercontent.com/28949235/125818953-985f2d8b-442d-41e6-833c-c82aaa95f672.png" alt="image" />
    <img src="https://user-images.githubusercontent.com/58849278/126058907-1f14f778-5784-432e-bfa4-1a7c05110391.png" />
    <img src="https://user-images.githubusercontent.com/58849278/126058934-63c29b0c-9521-4465-ba1d-615f9e273e7d.png" />
	<img src="https://user-images.githubusercontent.com/28949235/125819660-29a88675-1b4d-4a72-b358-5917d71b4f6b.png" />
	<img src="https://user-images.githubusercontent.com/58849278/125906281-1427c872-10af-4cad-b791-c9f6722ee39d.png" />
	<img src="https://user-images.githubusercontent.com/28949235/125819715-3f5a355f-5ee7-4465-999d-455550becd82.png" />
	<img src="https://user-images.githubusercontent.com/58849278/125941262-a64007c8-62d6-4f45-8188-726ad4ace3e0.png" />
	<img src="https://user-images.githubusercontent.com/58849278/125941379-a457ebc3-fbc8-4d84-a4c7-141d117d1ec7.png" />
  <img src="https://user-images.githubusercontent.com/28949235/125819842-019d3d42-0af6-4775-8b3e-276752416deb.png" />


	

### Power of Collaboration 

“_A hackathon is an event organized by talented people for talented people. You don’t have to have supernatural skills or extraordinary knowledge in order to participate. You just have to be willing to try something new. During this event you’ll discover how you can apply your skills in development, management, design, art, idea generation, and solution election._”

Every one has heard about hackathons, this is especially true for a university full of engineering students. However, not many of us has actually experienced one before. Before I participated in Journey team, I had the common misconception that a hackathon only involves coding for an entire day. In fact, my 3 weeks , every day was my gift, challenge, and reward. Not all hackathons are about coding. Every day I learned how to cooperate with my android team, design, iOS, and server. Together, we made precious day, tremendous growth , and relationship. Of course, working hours without sleep, it wasn't the problem. I made priceless memory with my Journey Team. Loveya 🖤