Friends — это приложение для iOS, созданное для упрощения координации групп и управления финансами. Планируете встречу с друзьями или управляете общими расходами? Friends поможет вам с интуитивными функциями для совместной работы и организации.
✨ Основные функции
- Организация встреч с совместным выбором времени и места
- Совместное планирование: Планируйте встречи, позволяя участникам группы голосовать за лучшее время и место.
- Обновления в реальном времени: Просматривайте предпочтения всех участников в реальном времени, чтобы выбрать идеальное место и время встречи.
- Организация распределения финансов
- Учет расходов: Ведите учет общих расходов и отслеживайте, кто сколько должен.
- Справедливое распределение: Автоматически рассчитывайте, как разделить расходы поровну или по индивидуальным правилам.
- Требования
- Xcode: Версия 15.2 или новее
- iOS: 16.0 или новее
- Swift: 5.9 или новее
- Клонируйте репозиторий:
git clone https://github.com/your-username/friends.git
cd friends- Откройте в Xcode: Откройте
Friends.xcodeproj. - Соберите и запустите: Выберите симулятор (например, iPhone 16) и нажмите
Cmd + R, чтобы собрать и запустить приложение.
Организация встречи:
- Перейдите на вкладку "Встречи".
- Создайте новую встречу и пригласите друзей.
- Предложите несколько временных интервалов и мест, затем позвольте всем проголосовать.
- Подтвердите встречу, когда будет достигнут консенсус.
Управление финансами:
- Перейдите на вкладку "Финансы".
- Добавьте новый расход, укажите сумму и выберите участников.
- Приложение рассчитает долю каждого участника.
Friends включает как модульные, так и UI-тесты для обеспечения надежности:
- Модульные тесты: Проверяют основную функциональность, например, расчет расходов.
- UI-тесты: Тестируют навигационные потоки, такие как планирование встречи и возврат на главный экран.
Мы используем SwiftLint для соблюдения стандартов кодирования. Чтобы запустить SwiftLint локально:
swiftlint lintFriends использует GitHub Actions для непрерывной интеграции. Рабочий процесс (main.yml) запускается при каждом пуше на включение в ветку main и выполняет следующее:
- Разрешает зависимости SPM.
- Запускает SwiftLint для проверки стиля кода.
- Собирает приложение.
- Запускает модульные и UI-тесты на симуляторе iPhone 16.
Этот проект распространяется под лицензией MIT.