We have already shared with you some of our open source projects but it was a while ago and we have added some new stuff to our GitHub. This time it will be useful libraries for Android developers. We use them in our own work and they help to automate those small tasks you come across on a lot of projects.
ChatKit - is a library designed to simplify the development of UI for such a trivial task as chat. It have flexible possibilities for styling, customizing and data management.
MVVM Tools Kit
It is our solution for implementing MVVM architecture pattern in your apps. It inclides IDEA plugin and MVVM pattern implemention library. Now all the needed classes can be created with only one click. You can find the ways to use it in our blog.
It’s pretty hard to find good public libraries for viewing images, and there were none available for Fresco library. That’s why we decided to write FrescoImageViewer, a full-screen image viewer supporting “pinch to zoom” and “swipe to dismiss” processing without conflicts.
There’re also customization options available:
- Changing background color
- Using custom overlay
- Custom drawee hierarchy
- Changing margins for achieving interesting effects:
FrescoImageViewer library can be used in:
- Gallery apps
- Apps for selling photos
- Various news readers and media services
FrescoImageViewer library as well as all the relevant documentation is available on our GitHub page. To learn more about gestures see our tutorial on handling system and custom gesture detectors in Android.
Dialogues for picking various parameters are used in a variety of apps so we decided to make everyone’s life better by creating a universal library for generating a dialogue screen with a single or multiple picker. Library supports both lists and arrays so there’s no need to convert anything.
UniversalPickerDialog library can be used in:
- Apps where search is conducted via several parameters (apps for finding a doctor, job search services, dating apps)
- Calendars, planners and productivity apps
UniversalPickerDialog library as well as all the relevant documentation is available on our GitHub page.
Registration via social networks is very convenient for users. But there’re already so many of social websites that it is better to “catch ’em all” once in a library and then simply use it in all the future projects. And that’s exactly what we did! Our library supports Facebook, Twitter, Instagram, Google+ and Vkontakte.
SocialAuthHelper can be used in virtually any app that has user profiles. SocialAuthHelper library as well as all the relevant documentation is available on our GitHub page.
Many apps need to get photos or videos from the gallery or camera (for example for avatars). It is a simple task but with some traps and pitfalls nonetheless. There’s a bug on some Samsung and Sony devices that prevents apps from getting photos from the camera. And users might also want to pick a photo from the cloud, such as Google Photos, instead of the device gallery. ContentManager library takes into account this peculiarities.
Just as SocialAuthHelper, ContentManager library can be used in a variety of apps since nowadays users often keep their photos and videos in the cloud for backup or synchronization purposes. And you won’t need to fix Samsung and Sony bugs each time :)
ContentManager library as well as all the relevant documentation is available on our GitHub page.
Messengers like WhatsApp and social media apps often connect user account to their phone number or use two-factor authorization. In any case a user receives an SMS with a code that should be put into a special field. To save time we fetch this code and automatically input it into the relevant field:
SmsVerifyCatcher library can be used in:
- Chat and messenger apps
- Apps with two-factor authentication
SmsVerifyCatcher library as well as all the relevant documentation is available on our GitHub page.
Swipeable-Button Library for Android
Sometimes, in the project, we need to make sure that the user does this or that action deliberately. Usually, a dialogue format is used for confirmation in such cases. But there are alternative options. For example, you can use a button which switches only when the switcher is pulled. Unfortunately, this option is unavailable for the pre-packaged solutions.
- ready-made solution which can be used «out of the box» for the fast realization;
- totally customizable prototypes, style settings «out of the box» (use your own colors, texts, images, sizes, and backgrounds);
- the button behavior when pressed can be customized; animation can be switched off.
Swipeable-Button Library for Android library as well as all the relevant documentation is available on our GitHub page.