Integration
Branding
marketplace
visitors per month. However, its further progress was limited
by the natural framework. The architecture of the project
was designed for an information publication,
not an online service. New services were
introduced at different times and did not
have a single design concept. A large number of modules
and functional elements were kept on "crutches".
It's time to rethink the project and
give it a new embodiment!
Technical audit
We implemented a website old version’s audit and analysis of competitors.Based on our research, a technical task was created, which described the requirements for the updated site in terms of the general structure, the structure of individual landing pages, and architecture. Technical task also contained requirements for site search engine optimization. An important part of it was the developed checklist for organizing a seamless move of the new version of the site to a new domain name with a new structure of URLs.
Web design
Besides the emphasis on the external component, a huge amount of work has been done to organize a user-friendly interface. In fact, the project turned into an aggregator of excursions with useful information about the main city’s attractions. The deployment of the project in the service history added the need to develop interfaces associated with the full cycle of purchase and work in the personal account. As part of this stage, all behavioral scenarios were thought out and implemented for all user groups: ordinary visitors, registered users, partner guides, sales managers.
Integration
One of the interesting tasks was to design the architecture of the application's interaction with various third-party services (providers), which had radically different interaction interfaces. As a solution, using a design pattern, a method and data aggregation layer class was developed that combines all the various interfaces and provides a common interface for the interaction of the application's business logic. Of the box-based solutions in this case, only Yandex.Checkout acquiring was used to organize online payment.For detailed analytics, we use dynamic call tracking from CoMagic. To provide prompt feedback - TextBack and MailChimp. All other functionality is implemented from scratch.
Development
The project is developed in PHP using the Laravel framework. There is a lot of functionality required for implementation. Therefore, the general service system was separated into subsystems: as integration with third-party services, a personal account, an administrator panel (CRM system with built-in analytics).Due to this it was possible to achieve a more detailed study of each of the subsystems separately from the overall system’s monolith , ensuring minimal component connectivity and flexibility for further scaling. Also, based on the requirements for storing and retrieving information, it was decided to use the PostgreSQL database, which added an increase in speed from the moment the query started, to the moment the result was returned several times.