Mobile iOS Application for Bloggers’ Platform
ВloggerMall is the first Ukrainian platform aimed at making it easy for advertisers and Instagram bloggers to find each other and establish effective and safe collaborations.
After a successful experience of cooperation in the development of the site, BloggerMall turned to us again, only this time for the superpower of an iOS developer who is ready to create a convenient modern application for users of apple gadgets.
See also:BloggerMall.com.ua blogger exchange
The desire of our client to make the service for regular customers even more convenient and enjoyable turned into a task: to develop a stylish and understandable application that duplicates the capabilities of the site and is in no way inferior to it in terms of its functions:
- registration and authorization of users;
- blogger profile with a description and detailed analytics of the target audience;
- blogger’s advertising account;
- payment system through the UAPAY service;
This is what we actually did.
The design department received the task to design layouts for the mobile application. And for our iOS developer, with 5 years of experience, one large-scale task “Develop an application” immediately broke into several specific steps:
- Create pixel perfect based on design layouts;
- Develop application screens, navigation between them, transitions and animations;
- Build a functional part based on API calls to the server part;
- Create application components and set up a library that will match the functionality and design of the layouts.
Read more about how we implemented the project in our case study.
When developing complex applications for iPhone and iPad, our specialists use Swift, the native language of the iOS mobile platform: reliable, intuitive and fast not only in development, but also in work on Apple devices.
Implementation of design and animations
At the time when BloggerMall came to us with a new project, the company already had a successful site made by Webnauts with a ready-made logo, bright corporate colors and a ready-made UI kit. Previously, our designers took part in the development of website design. Now the task is to design a mobile application for iOS devices.
Despite the fact that our first project assumed an adaptive design of the platform for any type of device, the design of the mobile application has its own characteristics. If the mobile version of the site looks almost the same as the site in a regular browser, then the design of the application must meet the requirements of the OS manufacturer for the user interface (in our case, the requirements of iOS). So the mobile application for apple devices will look “native”, and thanks to integration with the platform, it will work faster.
Based on the layouts developed in the Figma graphics program, our developer implemented and “revived” the pixel design of the application using the following technologies:
- Modal ViewController – bottom sheet modal view controller. This is a useful feature with a great UI/UX design that helps present a quick preview with minimal content.
- UINavigationControlleris a specialized view controller that manages navigation through hierarchical content. It is a navigational interface that allows you to effectively visualize data and make it easier for the user to navigate through this content. Simply put, the UINavigationController helps the application user remember where they are at the moment (name of the navigation bar) and how they can return to the previous screen (the built-in back button).
Animation plays an important role in mobile app design. It is designed not only to distinguish an IT product from competitors, but also to increase the usability of the application. Animation “reacts” to the user’s actions and helps them quickly get used to it, making the process dynamic and interesting.
In the BloggerMall application, we animated interface elements such as a hamburger menu, buttons, registration fields, radio buttons and a bottom navigation (tab bar) with 3 main sections of the application (My Ads, Posts, Profile).
Animation of visual elements is implemented using the following technologies:
- Core Animation is a program developed by Apple for rendering, compositing, and animating images. It allowed us to deliver high frame rates and smooth animations without consuming the CPU or slowing down the application.
- Lottie is an iOS, Android, and React Native library that renders After Effects animations in real time. Using animation with it is as easy as using static images.
Functional part of the iOS application
User registration and authorization
Registration and access to the application is possible both by entering an email and password, and by logging in through Facebook and Google.
The blogger registration process includes 6 steps, during which you must specify personal data and a password, information and blog topics, rates and a method of payment for advertising services.
If you enter an incorrect password, the system offers the usual way to recover it via e-mail:
Registering an advertiser is easier and takes just 2 steps. To do this, you must fill out the form and accept the user agreement.
It contains several sections: Personal data, My Instagram account, Prices for my services, My payment card.
Blogger’s advertising account
Contains all information about advertising cooperation and includes 3 main sections: All advertising, In progress and Waiting. It allows you to control not only the status, terms and payment of advertising requests, but also quickly go to the chat with the advertiser to agree on the terms and details of the transaction.
The principle of payment for advertising services on the exchange is as follows: after mutual confirmation of the order, the advertiser pays for the service from a previously linked bank card, and the funds are “frozen” on the platform (90% – payment to the blogger and 10% – exchange commission). After the advertiser has confirmed the successful completion of the order, the blogger receives his money on his bank card. In case of non-fulfillment of the order, the money is returned to the advertiser’s account in full. Like on the site, all mobile payments are made using the UAPAY National Payment Service.
All of the above functionality of the BloggerMall application is implemented on the basis of API calls to the server side using technologies:
- UI Kit is a structured library of native components based on Apple guidelines. Thanks to interface elements grouped into categories (buttons, pop-ups, navigation bars, icons) and implemented in accordance with the apple design specification (typography, style, colors), UI Kit allows you to significantly speed up the creation of an application for iPhone and iPad.
- Alamofire is a Swift-based HTTP networking library for iOS and Mac OS X. It provides an elegant interface on top of the Apple Foundation networking stack that simplifies common networking tasks. Its features include chain methods of request and response, encoding and decoding responses, and data authentication.
Development of a messenger for an iOS application
Chat between users of the BloggerMall application was implemented using MessageKit technology, an open source Swift library for sending and rendering messages between users of iOS devices.
Perhaps the implementation of the chat was the trickiest task of the project. The server part of the messenger had previously been written for the BloggerMall website, and it should have been “transferred” to the iOS platform so that the principle of the chat was the same on the site and in the application.
But, as you know, it is easier (though longer) to write programs from scratch than to unravel someone else’s code. And the use of third-party libraries can not always be clearly customized to the client’s request.
Here the MessageKit technology helped, although not immediately, since our developer encountered it for the first time. At first, it was not entirely clear how to send, receive and compare data: not only text, but also large photo and video files. There were some difficulties with the design, namely with setting up the library and displaying the interface that the client requested. However, having gradually mastered the technology and figured out how the backend with the frontend works on the site, our iOS developer began to implement the messenger. As a result, we got both a convenient chat and an even more advanced specialist.
It took 2 months to create an iOS application, as a result of which BloggerMall received not only another source of income, but also the most thoughtful, understandable and reliable tool for effective cooperation between its clients: bloggers and advertisers. Analytics, advertising account, transaction history and internal chat – now everything is at hand for comfortable and safe cooperation. More satisfied customers means more successful transactions, and hence the growth of the company’s income.
During this difficult project, we not only successfully implemented the product, but also replenished our technology stack. We love challenges, because they allow us to develop and make really cool things.