Skip to content
/ Reddit Public

Humblr for Reddit. Android Kotlin, Single activity mobile application project with: Clean, MVVM, Hilt DI, coroutines, OAuth2, OkHttp Interceptor, Retrofit, Moshi (including PolymorphicJsonAdapterFactory & ScalarsConverterFactory), DelegateAdapters, Onboarding with ViewPager2+TabLayout, Lottie animation.

Notifications You must be signed in to change notification settings

maiow/Reddit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

68 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

GitHub last commit

Reddit client - project is using API for Reddit

Humblr for Reddit. Android Kotlin, Single activity mobile application project with: Clean, MVVM, Hilt DI, coroutines, OAuth2, OkHttp Interceptor, Retrofit, Moshi (including PolymorphicJsonAdapterFactory & ScalarsConverterFactory), DelegateAdapters, Onboarding with ViewPager2 & TabLayout, Lottie animation. Full support of Russian and English locales.

Check Readme file inside the project for description in English .

Onboarding, authorization through Reddit:

onb-auth auth

New/Popular Subreddits listings with Search function. Subscribe/unsunscribe, share link on subreddit. Open subreddit, upvote/downvote post, download, save to online collection.

subreddits

Favorites screen: Subreddits - Posts and All - Saved switchers.

favorites

My Profile screen: logged user's friends list, Clear saved posts, Logout.

profile

Click on any Reddit user -> User screen with his Posts. Making Friends:

user

Π‘ΠΊΠ°Ρ‡Π°Π» - ΠΏΠΎΡΡ‚Π°Π²ΡŒ 🌟

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ прилоТСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ:

  • Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² качСствС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π½Π° Reddit вашС собствСнноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (https://github.com/reddit-archive/reddit/wiki/OAuth2) ΠΈ Π²ΠΏΠΈΡΠ°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ„Π°ΠΉΠ» AuthConst.kt:
  • const val CLIENT_ID = "your-client-id"
  • const val REDIRECT_URI = "your-redirect-uri"
Π—Π°Π΄Π°Π½ΠΈΠ΅
Π’Π°ΠΌ прСдстоит Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ мобильноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅-Π°Π½Π°Π»ΠΎΠ³ Reddit. 

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ позволяСт зарСгистрированным ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ссылки Π½Π° ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ²ΡˆΡƒΡŽΡΡ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅, 
Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ интСрСсный ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ ΠΈ ΠΎΠ±ΡΡƒΠΆΠ΄Π°Ρ‚ΡŒ Π΅Π³ΠΎ.

ПолноС описаниС API: https://www.reddit.com/dev/api

ΠŸΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ Figma

Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΈ использования:

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ знакомится с основными функциями прилоТСния Π½Π° экранС ΠΎΠ½Π±ΠΎΡ€Π΄ΠΈΠ½Π³Π°.
ΠžΠ½Π±ΠΎΡ€Π΄ΠΈΠ½Π³ отобраТаСтся сразу ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ запускС прилоТСния.

Авторизация

А) Π­ΠΊΡ€Π°Π½ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ отобраТаСтся всСгда ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ экраном послС ΠΎΠ½Π±ΠΎΡ€Π΄ΠΈΠ½Π³Π°.
Π‘) ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π±Π΅Π· Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ нСльзя.

АутСнтификация: https://github.com/pratik98/Reddit-OAuth

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Β«Π‘Π°Π±Ρ€Π΅Π΄Π΄ΠΈΡ‚Ρ‹Β»

Π’Π²Π΅Ρ€Ρ…Ρƒ строка поиска, ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ «НовоС/ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΠ΅Β».
ΠŸΡ€Π΅Π΄Π»Π°Π³Π°Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ подписки прямо Π² спискС сабрСддитов.
По Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ Π½Π° сабрСддит ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ описаниС сабрСддита.


ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ сабрСддит

Π’ сабрСддитС ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ сразу список ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π².
ΠŸΡ€ΠΈ ΠΊΠ»ΠΈΠΊΠ΅ Π½Π° ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΅Π³ΠΎ.
Π’Π²Π΅Ρ€Ρ…Ρƒ ΠΎΠΊΠ½Π° Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ сабрСддита ΠΈ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Π˜Π½Ρ„ΠΎΒ», ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ описаниС сабрСддита.


ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ описаниС сабрСддита

ΠžΠ±Ρ‰Π°Ρ информация ΠΎ сабрСддитС.
Кнопки:
«Подписка/отписка Π½Π° сабрСддит».
Β«ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡΒ».


ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

Автор, врСмя, тСкст коммСнтария.
Кнопки:
Β«Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅Β».
Β«Π›ΠΎΠΊΠ°Π»ΡŒΠ½Π°Ρ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ°Β».
Кнопки для голосования.
НиТС список ΠΏΠ΅Ρ€Π²ΠΎΠΉ страницы сообщСний для коммСнтария, послС Π½Π΅Π³ΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ° Β«ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ всё».
Кнопка Π²Π΅Π΄Ρ‘Ρ‚ Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ страницу сообщСний с ΠΏΠ°Π³ΠΈΠ½Π°Ρ†ΠΈΠ΅ΠΉ.


ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ ΡŽΠ·Π΅Ρ€Π°

ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ любого ΡŽΠ·Π΅Ρ€Π°.
ΠšΡ€Π°Ρ‚ΠΊΠ°Ρ информация.
Кнопка Β«Π—Π°Ρ„Ρ€Π΅Π½Π΄ΠΈΡ‚ΡŒΡΡΒ».
ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ.


ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Β«Π˜Π·Π±Ρ€Π°Π½Π½ΠΎΠ΅Β»

Π’Π²Π΅Ρ€Ρ…Ρƒ Π΄Π²Π° ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ: Β«Π‘Π°Π±Ρ€Π΅Π΄Π΄ΠΈΡ‚Ρ‹Β»/Β«ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈΒ»,  «ВсС»/Β«Π‘ΠΎΡ…Ρ€Π°Π½Ρ‘Π½Π½Ρ‹Π΅Β».
НиТС списки сабрСддитов ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π².
ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Ρ‹ ΠΏΡ€ΠΈ сохранённом:
ΠŸΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½.
Если информация доступна, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌ.
НСт ― пишСм, Ρ‡Ρ‚ΠΎ информация нСдоступна ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½Π°.
ΠŸΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ локально. (//рСализация Π½Π΅ трСбуСтся)
ПишСм, Ρ‡Ρ‚ΠΎ информация нСдоступна.


Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Π΄Ρ€ΡƒΠ·ΡŒΡ

МоТно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ любого ΡŽΠ·Π΅Ρ€Π°.
Бписок Π΄Ρ€ΡƒΠ·Π΅ΠΉ Π»Π΅ΠΆΠΈΡ‚ Π² ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅.

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Β«ΠŸΡ€ΠΎΡ„ΠΈΠ»ΡŒΒ»

Кнопка Ρ€Π°Π·Π»ΠΎΠ³ΠΈΠ½Π°.
ОписаниС профиля.
Кнопка Β«ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ сохранённыС».
Бписок Π΄Ρ€ΡƒΠ·Π΅ΠΉ. //открываСтся Π½Π° одСльном экранС

About

Humblr for Reddit. Android Kotlin, Single activity mobile application project with: Clean, MVVM, Hilt DI, coroutines, OAuth2, OkHttp Interceptor, Retrofit, Moshi (including PolymorphicJsonAdapterFactory & ScalarsConverterFactory), DelegateAdapters, Onboarding with ViewPager2+TabLayout, Lottie animation.

Topics

Resources

Stars

Watchers

Forks

Languages