Skip to content

filin2hat/Unsplasher

Repository files navigation

Unsplasher

General Project Description:

Unsplasher is a mobile application that allows users to browse and search for high-quality, royalty-free images from the Unsplash API. The app provides a seamless and intuitive user interface for discovering, searching and downloading stunning photographs for personal or commercial use.

Technologies Used:

  • MVVM Architecture: The project follows the Model-View-ViewModel architectural pattern, which promotes separation of concerns and maintainability.
  • Clean Architecture: The app is designed using the principles of Clean Architecture, ensuring a modular and scalable codebase.
  • Modular Structure: The application is structured into modules, enabling better code organization and reusability.
  • Jetpack Components: The app utilizes various Jetpack components such as LiveData, ViewModel, Navigation, Room, and Paging for efficient and robust development.
  • Dependency Injection: Dagger Hilt is used for dependency injection, enabling modular and testable code.
  • Networking: Retrofit is used for handling network requests and communication with the Unsplash API.
  • Database: Room is used for local data storage and caching of images and user preferences.
  • Image Loading: Glide library is used for efficient image loading and caching.
  • Testing: JUnit and Espresso are used for unit and UI testing respectively, ensuring the reliability and quality of the app.

Important:

Downloaded - press 🌟

For the application to work, you must:

  • register an account on Unsplash
  • on the site, in the developer console, create an application, indicating all available scopes (https://unsplash.com/oauth/applications)
  • register the received keys in local.properties:
  • ACCESS_KEY = Access Key
  • SECRET_KEY = Secret key

Russian / Русский:

Общее описание проекта:

Unsplasher - это мобильное приложение, которое позволяет пользователям просматривать и искать высококачественные бесплатные изображения из API Unsplash. Приложение предоставляет интуитивно понятный интерфейс для просмора, поиска и загрузки потрясающих фотографий для личного или коммерческого использования.

Technologies Used:

  • Архитектура MVVM: Проект следует архитектурному шаблону Model-View-ViewModel, который способствует разделению ответственности и обеспечивает легкость поддержки кода.
  • Чистая архитектура: Приложение разработано с использованием принципов чистой архитектуры, обеспечивающей модульность и масштабируемость кодовой базы.
  • Модульная структура: Приложение имеет модульную структуру, позволяющую лучшую организацию кода и повторное использование.
  • Компоненты Jetpack: Приложение использует различные компоненты Jetpack, такие как LiveData, ViewModel, Navigation, Room и Paging для эффективной и надежной разработки.
  • Внедрение зависимостей: Используется Dagger Hilt для внедрения зависимостей, обеспечивающего модульность и возможность тестирования кода.
  • Сетевое взаимодействие: Retrofit используется для обработки сетевых запросов и взаимодействия с API Unsplash.
  • База данных: Room используется для локального хранения данных и кэширования изображений и пользовательских настроек.
  • Загрузка изображений: Для эффективной загрузки и кэширования изображений используется библиотека Glide.
  • Тестирование: JUnit и Espresso используются для модульного и UI-тестирования соответственно, обеспечивая надежность и качество приложения.

Важно:

Скачал - поставь 🌟

Для работы приложения необходимо:

  • зарегистрировать аккаунт на Unsplash
  • на сайте, в консоли разработчика создать приложение, с указанем всех доступных скоупов (https://unsplash.com/oauth/applications)
  • полученые ключи прописать в local.properties:
  • ACCESS_KEY = Access Key
  • SECRET_KEY = Secret key

My contacts:

Demonstration

Onboarding and login screens:

onboarding_login

Photos screen and searching images:

photos_and_search

Collection screens. Like. Share link:

collection_like_share

Profile screen. Exit profile:

profile_exit

Location on map:

to_map

No network connection

network_err

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages