Məzmuna keç
← İşlər

BANM-in 32 komandalı ixtisaslararası futzal çempionatı üçün ikidilli turnir platforması.

Rol
Full-stack developer
Növ
Canlı sayt
İl
2026
BHOS Football screenshot
BHOS Football on a phone

Problem

32 komandanın iştirak etdiyi çempionatın matçlarını, nəticələrini və statistikasını bir yerdə göstərmək lazım idi.

Həll

Turnirin bütün məlumatlarını göstərən ikidilli platforma: matç cədvəli, nəticələr, turnir sxemi, komandalar və bombardirlər.

Nə etdim

  • Admin hesabı zalda telefondan yazır, nəticə açıq olan bütün səhifələrdə saniyələr içində, yeniləmədən görünür (Sanity Live).
  • Özü yenilənən turnir sxemi yazdım: yalnız ilk turun komandaları saxlanılır, qalanı nəticələrdən hesablanır. Köhnə nəticə düzəldiləndə ondan asılı nəticələr admin yenidən təsdiqləyənə qədər gizlənir.
  • Admin panelini telefon üçün uyğunlaşdırdım: "Bugünkü matçlar" siyahısı, hesab üçün böyük + və - düymələri, bombardir adları üçün avtomatik təkliflər.
  • Azarkeş proqnozları, təqvimə əlavə (.ics, Google Calendar) və hər matç üçün WhatsApp və Telegram-da paylaşılan nəticə şəkli əlavə etdim.
  • Turnir məntiqini framework-dən ayrı modulda saxladım və 80-dən çox Vitest testi ilə örtdüm.
  • Sərt CSP, HSTS, Turnstile və rate limit qurdum. Əlaqə mesajları Sanity-də yalnız adminlərin görə biləcəyi şəkildə saxlanılır, ingilis versiyasında isə adlar beynəlxalq yazılışla göstərilir.

Necə qurulub

AzarkeşlərAZ / EN
AdminZalda, telefondan
Next.jsSxem, proqnozlar
Sanity StudioSaytın içində
SanityContent Lake, Live API

Admin hesabı yazır və dərc edir. Açıq olan bütün səhifələr saniyələr içində, yeniləmədən dəyişir.

Texnologiyalar

  • Next.js
  • React
  • TypeScript
  • Sanity
  • Tailwind CSS
  • GSAP
  • next-intl
  • Vitest
  • Vercel
Növbəti layihəAgriKöprü