Surf iOS
В этом репозитории собраны все наши библиотеки, утилиты, инструменты, лучшие практики и форки сторонних библиотек которые мы используем в своей повседневной работе.
Содержание
Лучшие практики
Инициализация проектов
- Xcode-Project-Templates – набор шаблонов для упрощения процесса создания проекта. Позволяет генерировать необходимые папки, файлы и так далее.
Кодстайл
- Swift Code Style - указания по оформлению кода на Swift.
- Obj-C Code Style - указания по оформлению кода на Obj-C
Архитектура
- Surf MVP – наш стандарт разработки UI-слоя приложений
Кодогенерация
- Generamba templates – содержит набор шаблонов для генерации кода (шаблон ViewController, шаблон Presenter и т.д.) для Generamba
Инструменты
- TargetsCheck - скрипт для проверки консистентности проекта, содержащего несколько Targets
Open Source
Здесь находятся описание и ссылки на наши Pod-библиотеки с открытым исходным кодом.
Любую из этих библиотек можно установить к себе в проект с помощью CocoaPods
Утилиты
Содержит набор небольших утилит.
Все утилиты находятся в одном репозитории, но разбиты по разным subspecs
Утилитой может быть форматер телефонных номеров или обертка над NSAttributedString
Для получения более подробной информации iOS Utils
Библиотеки
Эта секция содержит короткое описание и ссылки на репозитории библиотек которые мы активно разрабатываем, поддерживаем и используем в своих проектах.
Название | Описание | Автор | Статус |
---|---|---|---|
CoreEvents | C#-подобные события | LastSprint | |
NodeKit | Позволяет быстро и удобно работать с сетевыми запросами | LastSprint | |
RDDM | Для удобной работы с UI коллекциями | LastSprint | |
TextFieldsCatalog | Коллекция богатых и хорошо кастомизируемых текстовых полей | chausovSurfStudio | |
MaskInterpreter | Интерпритатор масок для пользовательского ввода | LastSprint |
Forks
Название | Почему ответвились |
---|---|
Generamba | Для работы с Bundler |
WSTagsField | Исправили краш и поддержка |
Popover | Исправили баг с расчетом размеров Popover'а |
PluggableApplicationDelegate | Поддерживаем |
SwiftTheme | Добавили alpha-канал к представлению цвета в hex |
MWPhotoBrowser | Багфиксинг и поддержка |
TLYShyNavBar | Поддержка |
ICViewPager | Доработка и поддержка |
NSObject+Rx | Добавили совместимость с RxSwift ~> 3.1.0 |
RxGesture | Понизили deployment target до iOS 8.0 |
OpalImagePicker | Доработка и поддержка |
Правила работы с репозиторием
Репозиторий создан с целью агрегирования всех собственных библиотек, утилит, инструментов, форков сторонних библиотек и различных практик которые мы используем в своей работе.
Для внесения изменений необходимо быть членом iOS команды Surf
Более детально правила описаны здесь