The core of the platform is to connect regular users with businesses and serve as a way for them to get benefits such as coupons. In return, the businesses have a greater reach for new potential customers and access to customer stats.
The social platform underwent a gradual process of maturation. It ended up requiring additional features such as abundant statistics for business owners, events, management of future user locations, radio, etc.
Suggestion algorithm for coupon recommendation - the system should keep the history of each regular user's coupons and suggest others (from a different business) of a similar type.
A search algorithm based on businesses locations - it was crucial to have a map and to be to search relative to the user's location for points of interest.
Custom-built chat between private users & business owners
Searching for & downloading business coupons that offer discounts and free items - it was important also to be able to search these based on their location and proximity to the user
Creating business coupons with a QR code generator
Payment integrations with several PSPs for premium & platinum businesses - a subscription-based model was implemented for businesses to access additional features and stats
This was our first long-term project and our involvement first began in late 2018. We initially joined the team that laid the foundations of the project and in time - inherited the whole development process.
We helped re-structure lots of the code and finish the project. Once the web version of the product got developed, we moved to develop a React Native app for both mobile platforms. Because React was used in the web app, we managed to re-use a big part of the state management logic.
We worked directly with the client and his team, picking on different features that were already decided on. We didn't use any particular agile methodology, the development process was mostly streamlined and we only discussed potential issues or complications resulting from the implementation.
The front-end for the web app is React.js.
The front-end for the mobile is based on React Native.
The back-end implementation is Node.js & Express.js.
The database is MongoDB.
By keeping a speedy development process the client managed to launch the web platform without complications.
It is important to mention that the client already had an iOS-native prototype app written in Swift at that time which had been developed in parallel by another team. It had taken a lot of time to perfect. That and the lack of an Android implementation convinced the client to make the decision for us to implement the React Native app.
This project served as our stepping-stone into the world of professional development work. We learned a lot and at the same time proved to ourselves that we are up to the task even in challenging circumstances.
What also mattered the most - the client was happy and we kept our schedule