Muqayise.com — Qiymət Müqayisəsi Platforması
Azərbaycan onlayn mağazalarının qiymətlərini bir yerə toplayan platforma — Phoenix LiveView və PostgreSQL üzərində qurulub, məhsulu harada daha ucuz olduğunu göstərir.
Layihə haqqında
Muqayise.com Azərbaycanın onlayn mağazalarından elektronika, məişət texnikası və ev məhsullarının qiymətlərini bir yerə toplayır. İstifadəçi məhsulu seçir və onun harada daha ucuz olduğunu bir baxışda görür — qiymətlər manatla göstərilir və avtomatik yenilənir.
Sayt Azərbaycan və rus dillərində işləyir.
İki fərqli sual, iki fərqli səhifə
Qiymət müqayisəsi saytında istifadəçinin iki ayrı sualı olur, biz də onlara iki ayrı səhifə ilə cavab veririk:
- «Bu məhsul harada ucuzdur?» — məhsul səhifəsi. Ən ucuz qiymət yuxarıda böyük yazılır, altında isə bütün mağaza təklifləri sıralanır, ən ucuzu işarələnmiş halda. Qiymət aralığı da göstərilir ki, fərqin nə qədər olduğu dərhal görünsün.
- «Hansı modeli alım?» — müqayisə aləti. Bir kateqoriyadan dörd modelə qədər seçilir və onların texniki xüsusiyyətləri yanaşı cədvəldə göstərilir. Modellər arasında fərqlənən sətirlər avtomatik işarələnir — beləliklə eyni olan onlarla sətri gözlə süzməyə ehtiyac qalmır.
Kataloq və təkliflər ayrı saxlanılır
Sistemin əsasında sadə, amma vacib bir ayrım dayanır: məhsul (kataloqdakı model) ilə mağaza təklifi (konkret mağazanın konkret qiyməti) ayrı-ayrı saxlanılır. Bir modelin beş mağazada beş qiyməti ola bilər, model isə birdir. Qiymət müqayisəsini mümkün edən məhz bu quruluşdur.
Mağaza qiymətlərini xarici bir toplayıcı müntəzəm yeniləyir — hazırda kataloqda yüzlərlə model və on minlərlə mağaza təklifi var.
Verilənlər bazası seçimi: niyə PostgreSQL
Baza kiçikdir — cəmi 20 MB. Belə həcmdə adətən daha yüngül bir həll seçilir, biz isə PostgreSQL-də qaldıq. Səbəb ölçü yox, dil idi:
- Azərbaycan və rus hərfləri. Axtarış böyük-kiçik hərfə baxmadan işləməlidir.
Yüngül bazalar bunu yalnız ingilis əlifbası üçün düzgün edir —
İ,Ə,Şkimi hərfləri isə tanımır. Bizim iki dilimiz məhz o iki dildir ki, orada bu qayda pozulur: istifadəçiindesityazandaİndesittapılmalıdır. - Qiymət rəqəmdir, kəsr deyil. Bütün saytın mahiyyəti qiymətlərin ən kiçiyini tapmaq və iki mağaza arasındakı fərqi göstərməkdir. Pul dəqiq onluq tiplə saxlanılmalıdır — sürüşən nöqtəli ədədlə yox.
- Eyni anda yazma. Qiymətləri yeniləyən toplayıcı işləyərkən sayt oxumağa davam etməlidir.
Bu üç səbəb layihənin sənədlərində yazılıb ki, gələcəkdə eyni sual yenidən qalxanda cavab hazır olsun.
Nəticə
Sayt Elixir və Phoenix LiveView üzərində qurulub — səhifələr serverdə render olunur, müqayisə cədvəli isə səhifə yenilənmədən dəyişir. Hər məhsul üçün ayrıca başlıq və təsvir yaradılır, hər kateqoriyanın öz müqayisə səhifəsi var; bu səhifələr axtarış sistemlərində «telefon qiymətləri», «müqayisə et» tipli sorğular üçün görünür.
Ekran görüntüləri
Təhvil verdiyimiz işin real ekran görüntüləri.
- muqayise.com

Ana səhifə — hər kartda məhsulun ən ucuz qiyməti və neçə mağazada satıldığı yazılır. - muqayise.com

Məhsul səhifəsi — bütün mağaza təklifləri bir siyahıda, ən ucuzu isə işarələnib. - muqayise.com

Müqayisə aləti — dörd modelə qədər seçilir, fərqli sətirlər avtomatik işarələnir. 
Telefonda eyni səhifə — axtarış və dil seçimi bir sırada yerləşir.

