SocialNet — это приложение для социальных сетей, разработанное с использованием SwiftUI и SwiftData. Оно включает функционал постов, комментариев, сохранённых записей, а также входа с использованием Face ID.
- Публикация постов — добавляйте и редактируйте свои посты.
- Комментарии — просматривайте и добавляйте комментарии к постам.
- Сохранённые записи — сохраняйте понравившиеся посты.
- Темы интерфейса — выбирайте светлый или тёмный режим.
- Face ID — вход с использованием биометрической аутентификации.
Проект реализован на основе архитектуры MVVM.
-
MainView
- Отображает главную страницу с постами и строкой поиска.
- Включает аватарки пользователей и список постов.
-
UserView
- Экран профиля пользователя с возможностью редактирования настроек.
- Отображает публикации текущего пользователя.
-
SavedPostsView
- Список постов, которые были сохранены пользователем.
-
SettingsView
- Экран настроек, где можно включить тёмный режим и активировать Face ID.
-
LoginView
- Экран для входа и регистрации с поддержкой Face ID.
-
FaceIDViewModel
- Класс для управления логикой Face ID.
- Реализует проверку доступности биометрической аутентификации.
-
PostsViewModel
- Управляет данными постов, такими как загрузка, лайки и добавление постов.
-
SavedPost
- Модель сохранённых постов с использованием SwiftData.
-
SwiftData для сохранённых постов
Сохранение записей реализовано с помощьюModelContainer. -
Face ID
- Поддержка биометрической аутентификации через Face ID.
- Реализована проверка и обработка ошибок для обеспечения безопасного входа.
-
Интерактивный интерфейс
- Элементы интерфейса обновляются в реальном времени благодаря использованию @StateObject и @ObservedObject.
- Например, при добавлении поста он сразу отображается в списке.
-
Поддержка тёмной темы
- Пользователь может переключать темы в реальном времени.
- Выбор сохраняется в UserDefaults.
Разработано с ❤️ и SwiftUI!












