Skip to content

ImageFeed (UIKit/MVP: Kingfisher, ProgressHUD, SwiftKeychainWrapper) / Yandex Practicum: iOS developer - многостраничное приложение, предназначено для просмотра изображений через API Unsplash. Resources

Notifications You must be signed in to change notification settings

DemiDevv/ImageFeed-IOS

Repository files navigation

📸 Image Feed

Мобильное iOS-приложение для просмотра изображений через Unsplash API.
Поддерживает авторизацию через OAuth, просмотр ленты, лайки и избранное.

📖 Документация Unsplash API


🚀 Технологии

  • Язык: Swift 5.x
  • Фреймворки: UIKit
  • UI-компоненты: UIImageView, UIButton, UILabel, UITableView, UITableViewCell, TabBarController, NavigationController, NavigationBar
  • Архитектура: MVC
  • Сетевые запросы: URLSession + OAuth авторизация
  • Минимальная iOS: 13.0 (только портретный режим)
  • Шрифты: системные (SF Pro)

✨ Основные функции

  • 🔑 Авторизация через OAuth Unsplash
  • 📰 Бесконечная лента фотографий из Unsplash Editorial
  • ❤️ Лайки и добавление изображений в избранное (расширенная версия)
  • 👤 Профиль пользователя с избранными изображениями
  • 🔍 Просмотр изображения на весь экран с возможностью поделиться
  • 🔄 Поддержка светлой и тёмной темы

⚙️ Установка и запуск

  1. Клонировать репозиторий
  2. Открыть проект в Xcode:
  3. Настроить OAuth Unsplash API:
    • Зарегистрировать приложение в Unsplash Developers
    • Получить Access Key и Secret Key
    • Указать ключи в настройках проекта
  4. Запустить на симуляторе или устройстве с iOS ≥ 13.0

📱 Основные экраны

🔑 Авторизация

  • Splash-screen
  • Экран авторизации с кнопкой «Войти»
  • Вход через OAuth Unsplash
  • Обработка ошибок при некорректной настройке или сбое

📰 Лента

  • Бесконечная лента изображений
  • Кнопка «Лайк» на карточках
  • Системные лоадеры и плэйсхолдеры при загрузке

📸 Просмотр изображения

  • Полноэкранное изображение
  • Поддержка жестов (зум, скролл, поворот)
  • Системное меню «Поделиться»

👤 Профиль

  • Фото, имя и username пользователя
  • Список избранных изображений (расширенная версия)
  • Кнопка выхода (Logout)

🌟 Расширенная версия

  • ❤️ Добавление изображений в избранное
  • 📊 Счётчик избранных фотографий в профиле
  • 📱 Просмотр избранного в отдельной ленте
  • 🔄 Синхронизация лайков в ленте и профиле

🛠 Нефункциональные требования

  • Только портретная ориентация
  • Минимальная поддерживаемая iOS — 13.0
  • Системные шрифты (SF Pro)
  • Обработка ошибок (системные алерты, плэйсхолдеры, лоадеры)

👨‍💻 Команда

  • Разработка и архитектура: @DemiDevv

📎 Полезные ссылки


⭐️ Если проект понравился — поддержи его звездой!

About

ImageFeed (UIKit/MVP: Kingfisher, ProgressHUD, SwiftKeychainWrapper) / Yandex Practicum: iOS developer - многостраничное приложение, предназначено для просмотра изображений через API Unsplash. Resources

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages