Описание функциональных характеристик ПО «Все Аптеки»

Общие сведения

Все аптеки — агрегатор товаров из аптечных сетей. Сервис помогает найти все необходимые лекарства по лучшей цене, получить заказ в ближайшей аптеке и в удобное для пользователя время. Цены и наличие товаров из аптечных сетей отображаются в реальном времени.

Заказ товаров может осуществляться посредством Web-интерфейса, приложений под iOS, Android и ВКонтакте.

Функциональные характеристики

Сервис предназначен для использования населением без специальных технических навыков. “Все Аптеки” помогает выбирать и заказывать лекарства и прочие товары в  аптеках. На карточках товаров отображается их подробное описание и инструкция по применению, показания и противопоказания. Кроме того, сервис показывает аналогичные препараты с тем же действующим веществом, для подбора дешевый аналог или замену лекарству.

Компоненты сервиса «Все Аптеки»

В состав программно-компонентного комплекса входят:

  • Frontend для web-версии
  • Мобильное приложение для Android
  • Мобильное приложение для iOS
  • Приложение для ВКонтакте
  • API для web-версии
  • API для мобильных приложений Android и iOS
  • API для приложения во ВКонтакте
  • API для Delivery Club
  • Объектное хранилище
  • Frontend для рекламных дашбордов

Инфраструктура (RPM, grafana, sentry, openstack, grpc, docker)

Frontend для web-версии

Предоставляет интерфейс для бронирования товаров в аптеках партнёров. Значительная часть функционирует внутри браузера пользователя, но для работы необходим API для web-версии.

Состоит из следующих сервисов:

  • nginx
  • v8 javascript engine
  • React
  • Typescript

Мобильное приложение для Android

Исполняется на мобильном устройстве пользователя с операционной системой Android. Разработано на SDK Flutter. Доступно из Google Play Store.

Мобильное приложение для iOS

Исполняется на мобильном устройстве пользователя с операционной системой iOS. Разработано на SDK Flutter. Доступно из Apple Store.

Приложение во ВКонтакте

Исполняется на платформе встраиваемых приложений ВКонтакте (VK mini apps). Создано на базе стандартных веб-технологий.

API для web-версии

Отвечает за обмен данными (о товарах, пользователях) между сервером и клиентом в браузере.Состоит из сервисов:

  • nginx
  • python
  • django
  • UWSGI
  • celery
  • centrifugo
  • sphinx
  • elasticsearch

API для мобильных приложений 

Отвечает за обмен данными (о товарах, пользователях) между сервером и клиентом в мобильных приложениях. Состоит из сервисов:

  • nginx
  • django
  • UWSGI

API для приложения во ВКонтакте

Отвечает за обмен данными (о товарах, пользователях) между сервером и клиентом во ВКонтакте..Состоит из сервисов:

  • nginx
  • django
  • UWSGI

API для Delivery Club

Используется для оформления заказов из приложения и сайта Delivery Club. Отвечает за обмен данными (о товарах, пользователях) между серверами Все Аптеки и Delivery Club. Состоит из сервисов:

  • nginx
  • django

Объектное хранилище

Отвечает за хранение данных о товарах, пользователях, аналитике. Используются следующие базы данных:

  • mysql
  • redis
  • memcached
  • clickhouse

Frontend для рекламных дашбордов

Сервис для отображения аналитической информации по рекламным кампаниям. Создан на базе стандартных веб-технологий.