# MobileMkch iOS Мобильный клиент для борды mkch.pooziqo.xyz для iOS ## Возможности - Просмотр всех досок Мкача - Просмотр тредов в каждой доске с пагинацией - Просмотр деталей треда и комментариев - Поддержка изображений и видео - Темная/светлая тема - Система настроек с сохранением: - Тема (темная/светлая) - Последняя посещенная доска - Автообновление - Показ файлов - Компактный режим - Размер страницы (5-20 тредов) - **Полная поддержка постинга:** - Аутентификация по ключу - Аутентификация по passcode - Создание тредов - Добавление комментариев - Автоматическое обновление после постинга - **Оптимизации для iOS:** - Нативная SwiftUI интерфейс - Кэширование данных - Оптимизация потребления батареи - Поддержка iOS 15.0+ ## Аутентификация и постинг ### Настройка аутентификации 1. Откройте настройки в приложении 2. Введите ключ аутентификации 3. Введите passcode для постинга (По наличию) (P.S. Увы, но пока-что не доработал пасскод, уважте, первая версия.) 4. Используйте кнопки "Тест ключа" и "Тест passcode" для проверки ### Создание тредов 1. Перейдите в нужную доску 2. Нажмите "Создать" 3. Заполните заголовок и текст 4. Нажмите "Создать" ### Добавление комментариев 1. Откройте тред 2. Нажмите "Добавить" 3. Введите текст комментария 4. Нажмите "Добавить" ## Сборка ### Требования - Xcode 15.0+ - iOS 15.0+ - macOS 13.0+ ### Сборка 1. Откройте проект в Xcode: ```bash open MobileMkch.xcodeproj ``` 2. Выберите устройство или симулятор 3. Нажмите Cmd+R для сборки и запуска ### Распространение 1. Выберите "Any iOS Device" в схеме сборки 2. Product и Archive 3. Distribute App через App Store Connect или Ad Hoc (Еще можно открыть архиве в файндер и там найти .app и закинув в Payload сжать папку в .ipa, но это слегка попердолинг увы) ## Структура проекта - `MobileMkchApp.swift` - точка входа приложения - `Models.swift` - структуры данных - `APIClient.swift` - HTTP клиент для mkch API - `Settings.swift` - система настроек - `Cache.swift` - система кэширования - `BoardsView.swift` - список досок - `ThreadsView.swift` - треды доски с пагинацией - `ThreadDetailView.swift` - детали треда - `CreateThreadView.swift` - создание тредов - `AddCommentView.swift` - добавление комментариев - `SettingsView.swift` - экран настроек ## Технологии - SwiftUI - Combine - Foundation - UIKit (для совместимости) ## Совместимость - iOS 15.0+ - iPhone и iPad (айпад СЛЕГКА поломан, проверил, мб чет с этим сделаю, лень) - Поддержка темной/светлой темы - Адаптивный интерфейс