# TechStack

## <span style="font-weight: 400;">Используемые технологии в платформе Crabler и производных сборках проектов</span>

## <span style="font-weight: 400;">Backend</span>

<span style="font-weight: 400;">\* PHP </span><span style="font-weight: 400;">http://www.php.net/</span>

<span style="font-weight: 400;">\* Yii2 </span><span style="font-weight: 400;">https://www.yiiframework.com/</span>

<span style="font-weight: 400;">\* PostgreSQL </span><span style="font-weight: 400;">https://www.postgresql.org/</span>

<span style="font-weight: 400;">\* API SMSЦентр </span><span style="font-weight: 400;">[https://smsc.ru/](https://smsc.ru/)</span>

### <span style="font-weight: 400;">IOS библиотеки</span>

<table id="bkmrk-%D0%BD%D0%B0%D0%B7%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-url-swinjec" style="width: 805px;"><tbody><tr><td style="width: 161px;">**название**

</td><td style="width: 644px;">**url**

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">Swinject</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://github.com/Swinject/Swinject</span>](https://github.com/Swinject/Swinject)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">SwinjectStoryboard</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://github.com/Swinject/SwinjectStoryboard</span>](https://github.com/Swinject/SwinjectStoryboard)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">LightRoute</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://github.com/SpectralDragon/LightRoute</span>](https://github.com/SpectralDragon/LightRoute)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">Alamofire</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://github.com/Alamofire/Alamofire</span>](https://github.com/Alamofire/Alamofire)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">AlamofireImage</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://github.com/Alamofire/AlamofireImage</span>](https://github.com/Alamofire/AlamofireImage)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">Eureka</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://github.com/xmartlabs/Eureka</span>](https://github.com/xmartlabs/Eureka)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">InputMask</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://github.com/RedMadRobot/input-mask-ios/blob/master/Source/Sample/Podfile</span>](https://github.com/RedMadRobot/input-mask-ios/blob/master/Source/Sample/Podfile)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">YandexMapKit</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://cocoapods.org/pods/YandexMapKit</span>](https://cocoapods.org/pods/YandexMapKit)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">SVProgressHUD</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://github.com/SVProgressHUD/SVProgressHUD</span>](https://github.com/SVProgressHUD/SVProgressHUD)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">CropViewController</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://github.com/TimOliver/TOCropViewController</span>](https://github.com/TimOliver/TOCropViewController)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">Firebase/Core</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://cocoapods.org/pods/Firebase</span>](https://cocoapods.org/pods/Firebase)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">Fabric</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://cocoapods.org/pods/Fabric</span>](https://cocoapods.org/pods/Fabric)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">Crashlytics</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://cocoapods.org/pods/Crashlytics</span>](https://cocoapods.org/pods/Crashlytics)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">HockeySDK</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://cocoapods.org/pods/HockeySDK</span>](https://cocoapods.org/pods/HockeySDK)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">FreshchatSDK</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://cocoapods.org/pods/FreshchatSDK</span>](https://cocoapods.org/pods/FreshchatSDK)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">ESPullToRefresh</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://github.com/eggswift/pull-to-refresh</span>](https://github.com/eggswift/pull-to-refresh)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">PopupDialog</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://cocoapods.org/pods/PopupDialog</span>](https://cocoapods.org/pods/PopupDialog)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">Cosmos</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://cocoapods.org/pods/Cosmos</span>](https://cocoapods.org/pods/Cosmos)

</td></tr><tr><td style="width: 161px;"><span style="font-weight: 400;">PagingMenuController</span>

</td><td style="width: 644px;">[<span style="font-weight: 400;">https://github.com/kitasuke/PagingMenuController</span>](https://github.com/kitasuke/PagingMenuController)

</td></tr></tbody></table>

### Android библиотеки

<table id="bkmrk-%D0%9D%D0%B0%D0%B7%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D0%A3%D1%80%D0%BB-cat.ere"><tbody><tr><td>**Название**

</td><td>**Урл**

</td></tr><tr><td><span style="font-weight: 400;">cat.ereza.customactivityoncrash</span>

</td><td>[<span style="font-weight: 400;">https://github.com/Ereza/CustomActivityOnCrash</span>](https://github.com/Ereza/CustomActivityOnCrash)

</td></tr><tr><td><span style="font-weight: 400;">com.a65apps.clustering</span>

</td><td>[<span style="font-weight: 400;">https://github.com/65apps/android-clustering-for-yandex-mapkit</span>](https://github.com/65apps/android-clustering-for-yandex-mapkit)

</td></tr><tr><td><span style="font-weight: 400;">com.afollestad.materialdialogs</span>

</td><td>[<span style="font-weight: 400;">https://github.com/afollestad/material-dialogs</span>](https://github.com/afollestad/material-dialogs)

</td></tr><tr><td><span style="font-weight: 400;">com.afollestad.materialdialogs.input</span>

</td><td>[<span style="font-weight: 400;">https://github.com/afollestad/material-dialogs</span>](https://github.com/afollestad/material-dialogs)

</td></tr><tr><td><span style="font-weight: 400;">com.airbnb.lottie</span>

</td><td>[<span style="font-weight: 400;">https://github.com/airbnb/lottie-android</span>](https://github.com/airbnb/lottie-android)

</td></tr><tr><td><span style="font-weight: 400;">com.airbnb.lottiecom.facebook.login</span>

</td><td>[<span style="font-weight: 400;">https://github.com/airbnb/lottie-android</span>](https://github.com/airbnb/lottie-android)

</td></tr><tr><td><span style="font-weight: 400;">com.alimuzaffar.lib.pin</span>

</td><td>[<span style="font-weight: 400;">https://github.com/alphamu/PinEntryEditText</span>](https://github.com/alphamu/PinEntryEditText)

</td></tr><tr><td><span style="font-weight: 400;">com.bumptech.glide</span>

</td><td>[<span style="font-weight: 400;">https://github.com/bumptech/glide</span>](https://github.com/bumptech/glide)

</td></tr><tr><td><span style="font-weight: 400;">com.crashlytics.android</span>

</td><td>[<span style="font-weight: 400;">https://firebase.google.com/products/crashlytics</span>](https://firebase.google.com/products/crashlytics)

</td></tr><tr><td><span style="font-weight: 400;">com.facebook</span>

</td><td>[<span style="font-weight: 400;">https://github.com/facebook/facebook-android-sdk</span>](https://github.com/facebook/facebook-android-sdk)

</td></tr><tr><td><span style="font-weight: 400;">com.facebookcat.ereza.customactivityoncrash</span>

</td><td>[<span style="font-weight: 400;">https://github.com/Ereza/CustomActivityOnCrash</span>](https://github.com/Ereza/CustomActivityOnCrash)

</td></tr><tr><td><span style="font-weight: 400;">com.flurry.android.analytics.sdk</span>

</td><td>[<span style="font-weight: 400;">http://flurry.github.io/flurry-android-sdk/analytics/index-all.html</span>](http://flurry.github.io/flurry-android-sdk/analytics/index-all.html)

</td></tr><tr><td><span style="font-weight: 400;">com.freshchat.consumer.sdk</span>

</td><td>[<span style="font-weight: 400;">https://github.com/freshworks/freshchat-android</span>](https://github.com/freshworks/freshchat-android)

</td></tr><tr><td><span style="font-weight: 400;">com.getkeepsafe.relinker</span>

</td><td>[<span style="font-weight: 400;">https://github.com/KeepSafe/ReLinker</span>](https://github.com/KeepSafe/ReLinker)

</td></tr><tr><td><span style="font-weight: 400;">com.github.chrisbanes.photoview</span>

</td><td>[<span style="font-weight: 400;">https://github.com/chrisbanes/photoview</span>](https://github.com/chrisbanes/photoview)

</td></tr><tr><td><span style="font-weight: 400;">com.github.florent37.singledateandtimepicker</span>

</td><td>[<span style="font-weight: 400;">https://github.com/florent37/SingleDateAndTimePicker</span>](https://github.com/florent37/SingleDateAndTimePicker)

</td></tr><tr><td><span style="font-weight: 400;">com.github.omadahealth.typefaceview</span>

</td><td>[<span style="font-weight: 400;">https://github.com/omadahealth/TypefaceView</span>](https://github.com/omadahealth/TypefaceView)

</td></tr><tr><td><span style="font-weight: 400;">com.mancj.materialsearchbar</span>

</td><td>[<span style="font-weight: 400;">https://github.com/mancj/MaterialSearchBar</span>](https://github.com/mancj/MaterialSearchBar)

</td></tr><tr><td><span style="font-weight: 400;">com.nowfal.kdroidext</span>

</td><td>[<span style="font-weight: 400;">https://github.com/nowfalsalahudeen/KdroidExt</span>](https://github.com/nowfalsalahudeen/KdroidExt)

</td></tr><tr><td><span style="font-weight: 400;">com.pierfrancescosoffritti.androidyoutubeplayer</span>

</td><td>[<span style="font-weight: 400;">https://github.com/PierfrancescoSoffritti/android-youtube-player</span>](https://github.com/PierfrancescoSoffritti/android-youtube-player)

</td></tr><tr><td><span style="font-weight: 400;">com.rd.pageindicatorview</span>

</td><td>[<span style="font-weight: 400;">https://github.com/romandanylyk/PageIndicatorView</span>](https://github.com/romandanylyk/PageIndicatorView)

</td></tr><tr><td><span style="font-weight: 400;">com.redmadrobot.inputmask</span>

</td><td>[<span style="font-weight: 400;">https://github.com/RedMadRobot/input-mask-android</span>](https://github.com/RedMadRobot/input-mask-android)

</td></tr><tr><td><span style="font-weight: 400;">com.rilixtech.widget.countrycodepicker</span>

</td><td>[<span style="font-weight: 400;">https://github.com/joielechong/CountryCodePicker</span>](https://github.com/joielechong/CountryCodePicker)

</td></tr><tr><td><span style="font-weight: 400;">com.stfalcon.chatkit</span>

</td><td>[<span style="font-weight: 400;">https://github.com/stfalcon-studio/ChatKit</span>](https://github.com/stfalcon-studio/ChatKit)

</td></tr><tr><td><span style="font-weight: 400;">com.stfalcon.imageviewer</span>

</td><td>[<span style="font-weight: 400;">https://github.com/stfalcon-studio/StfalconImageViewer</span>](https://github.com/stfalcon-studio/StfalconImageViewer)

</td></tr><tr><td><span style="font-weight: 400;">com.tsongkha.spinnerdatepicker</span>

</td><td>[<span style="font-weight: 400;">https://github.com/drawers/SpinnerDatePicker/blob/master/SpinnerDatePickerLib/src/main/java/com/tsongkha/spinnerdatepicker/DatePicker.java</span>](https://github.com/drawers/SpinnerDatePicker/blob/master/SpinnerDatePickerLib/src/main/java/com/tsongkha/spinnerdatepicker/DatePicker.java)

</td></tr><tr><td><span style="font-weight: 400;">com.vbytsyuk.ahbottomnavigation</span>

</td><td>[<span style="font-weight: 400;">https://github.com/aurelhubert/ahbottomnavigation</span>](https://github.com/aurelhubert/ahbottomnavigation)

</td></tr><tr><td><span style="font-weight: 400;">com.yandex.mapkit</span>

</td><td>[<span style="font-weight: 400;">https://yandex.ru/dev/maps/mapkit/?from=mapsapi</span>](https://yandex.ru/dev/maps/mapkit/?from=mapsapi)

</td></tr><tr><td><span style="font-weight: 400;">com.yandex.metrica</span>

</td><td>[<span style="font-weight: 400;">https://github.com/yandexmobile/metrica-sdk-android</span>](https://github.com/yandexmobile/metrica-sdk-android)

</td></tr><tr><td><span style="font-weight: 400;">com.yandex.metrica.push</span>

</td><td>[<span style="font-weight: 400;">https://github.com/yandexmobile/metrica-sdk-android</span>](https://github.com/yandexmobile/metrica-sdk-android)

</td></tr><tr><td><span style="font-weight: 400;">com.yandex.metrica.push.core</span>

</td><td>[<span style="font-weight: 400;">https://github.com/yandexmobile/metrica-sdk-android</span>](https://github.com/yandexmobile/metrica-sdk-android)

</td></tr><tr><td><span style="font-weight: 400;">com.yandex.runtime</span>

</td><td>[<span style="font-weight: 400;">https://yandex.ru/dev/maps/mapkit/doc/android-ref/lite/com/yandex/runtime/package-summary.html</span>](https://yandex.ru/dev/maps/mapkit/doc/android-ref/lite/com/yandex/runtime/package-summary.html)

</td></tr><tr><td><span style="font-weight: 400;">de.hdodenhof.circleimageview</span>

</td><td>[<span style="font-weight: 400;">https://github.com/hdodenhof/CircleImageView</span>](https://github.com/hdodenhof/CircleImageView)

</td></tr><tr><td><span style="font-weight: 400;">id.zelory.compressor</span>

</td><td>[<span style="font-weight: 400;">https://github.com/zetbaitsu/Compressor</span>](https://github.com/zetbaitsu/Compressor)

</td></tr><tr><td><span style="font-weight: 400;">io.fabric.sdk.android</span>

</td><td>[<span style="font-weight: 400;">https://firebase.google.com/docs/reference/android/io/fabric/sdk/android/fabric/package-summary</span>](https://firebase.google.com/docs/reference/android/io/fabric/sdk/android/fabric/package-summary)

</td></tr><tr><td><span style="font-weight: 400;">io.michaelrocks.libphonenumber.android</span>

</td><td>[<span style="font-weight: 400;">https://github.com/MichaelRocks/libphonenumber-android</span>](https://github.com/MichaelRocks/libphonenumber-android)

</td></tr><tr><td><span style="font-weight: 400;">me.toptas.fancyshowcase</span>

</td><td>[<span style="font-weight: 400;">https://github.com/faruktoptas/FancyShowCaseView/blob/master/fancyshowcaseview/src/main/java/me/toptas/fancyshowcase/FancyShowCaseView.kt</span>](https://github.com/faruktoptas/FancyShowCaseView/blob/master/fancyshowcaseview/src/main/java/me/toptas/fancyshowcase/FancyShowCaseView.kt)

</td></tr><tr><td><span style="font-weight: 400;">org.jetbrains.anko</span>

</td><td>[<span style="font-weight: 400;">https://github.com/Kotlin/anko</span>](https://github.com/Kotlin/anko)

</td></tr><tr><td><span style="font-weight: 400;">org.matrix.androidsdk</span>

</td><td>[<span style="font-weight: 400;">https://github.com/matrix-org/matrix-android-sdk</span>](https://github.com/matrix-org/matrix-android-sdk)

</td></tr><tr><td><span style="font-weight: 400;">org.matrix.olm</span>

</td><td>[<span style="font-weight: 400;">https://github.com/matrix-org/olm</span>](https://github.com/matrix-org/olm)

</td></tr><tr><td><span style="font-weight: 400;">pub.devrel.easypermissions</span>

</td><td>[<span style="font-weight: 400;">https://firebaseopensource.com/projects/googlesamples/easypermissions/</span>](https://firebaseopensource.com/projects/googlesamples/easypermissions/)

</td></tr></tbody></table>