Перейти до вмісту

Сторінка ЗВО

ПолеЗначення
Статус🟢 prod
Поверхніweb
Доступністьбезкоштовно, без акаунта
ВласникTODO:
Останнє підтвердження2026-06-13 · browse (curl живих сторінок) + код:main

Профіль конкретного ЗВО: статистика вступу, структура (факультети/інститути), спеціальності, конкурсні пропозиції та контакти приймальної комісії в одному місці. Через конкурсні пропозиції абітурієнт виходить на інсайдер-відгуки — реальних студентів цього ЗВО зі Studsearch, яким можна поставити питання.

Точка входу: https://abitly.org/uk/universities/{slug}-{id} (напр. /uk/universities/kpi-im-ihoria-sikorskoho-174). ID завжди — хвіст slug після останнього - (parseSlug). Усі таби індексуються пошуковиками й присутні в uk-universities.xml.

  1. З каталогу ЗВО або пошуковика абітурієнт потрапляє на дефолтний таб info — огляд із hero-фото (зі Strapi), статистикою, прев’ю секцій і sidebar-навігацією зі scroll-tracking.
  2. Таби в хедері: info · structure · specialities · socials · offers (конкурсні пропозиції з фільтрами рік/факультет/спеціальність, синхронізованими з URL) · contacts.
  3. Вкладені сторінки факультетів: /universities/{uSlug}-{uId}/faculties/{fSlug}-{fId}/{specialities|offers|socials}.
  4. Клік по конкурсній пропозиції → сторінка оферу /offers/result/{id} (див. Каталог офферів) — саме там рендеряться картки інсайдерів Studsearch: до 5 студентів цього ЗВО/факультету/спеціальності з фото та лінками на соцмережі (redirect через Studsearch backend). Якщо студентів немає — placeholder із запрошенням зареєструватися на Studsearch.
  5. Додатково: кнопка «Порівняти» (Zustand + localStorage → /compare), секція днів відкритих дверей із deep-link у Telegram-бота (деталі), пункти меню «Спитати у студентів» / «Залишити відгук» → studsearch.org (?source=abitly).

Cross-product потік Abitly ↔ Studsearch (спільний Postgres, різні схеми, два API) вже намальований — див. data-flows.

ДжерелоЕндпоінт / entityПризначення
api-v2GET /universities/{id}/info, /{id}/structure?year=N, /{id}/specialities?year=N, /comparingдані ЗВО, структура, спеціальності, порівняння
api-v2GET /offers?universityIds=...таб «Конкурсні пропозиції»
Strapicontent-type universities (external_id ↔ id з api-v2, image)hero-фото; немає фото → hero не рендериться
Studsearch backendGET /students?universityIds&facultyIds&specialityCodes, GET /students/link/{uuid}/{social}інсайдери на сторінці оферу + redirect на соцмережу студента

Studsearch-клієнт — окремий axios-інстанс на NEXT_PUBLIC_STUDSEARCH_API_URL (у prod — https://server.studsearch.org, ендпоінт публічний, без auth). Перегляд сторінки шле подію university_page_view у трекінг-пайплайн (track-events, див. індекс).

Зв’язки з іншими фічами

Section titled “Зв’язки з іншими фічами”
РепоШляхПримітка
abitly-frontend-v2src/app/[locale]/(main)/universities/[universitySlug]/сторінка + таби + faculties
abitly-frontend-v2src/components/pages/universities/UniversityPage/, src/api/universities/, src/api/students/UI, TanStack Query, Studsearch-клієнт
abitly-frontend-v2docs/domains/universities/першоджерело деталей домену (роути, API, типи)
abitly-api-v2src/api/universities/ + docs/modules/universities/модуль + модульні доки
  • Інсайдер-відгуки живуть на сторінці оферу, не на самій сторінці ЗВО — на профілі ЗВО Studsearch присутній лише через глобальне меню.
  • Дані офферів — річний snapshot (updateTime: 2025-07-21, рік 2024 у відповідях API), не live-стрічка ЄДЕБО.
  • Hero-фото залежить від ручного наповнення Strapi: немає запису з external_id → секція прихована.
  • Studsearch-ендпоінт без фолбека на помилку — query має placeholderData: [], тож при падінні Studsearch секція тихо порожніє.
ДатаПодіяДжерело
2026-06-13Картку створено; живі сторінки ЗВО, табів і оферу з інсайдерами підтверджені curl-омця картка
2026-05-15Домен-доки docs/domains/universities/ актуалізовані (status: living)frontmatter доків у репо