Proje: Okul B2B App · Hub: Okul B2B App — Conventions

Boyut ve Spacing Sistemi

constants/Dimensions.ts — Tüm UI boyutları responsive ve tablet-aware.

SPACING (px)

SabitTelefonTablet
XS46
SM812
MD1216
LG1624
XL2032
XXL2440
XXXL3248

FONT_SIZES (sp)

SabitTelefonTablet
XS1012
SM1214
MD1416
LG1618
XL1820
TITLE2832

BORDER_RADIUS

SM: 8, MD: 12, LG: 16, XL: 20, XXL: 24, XXXL: 32, ROUND: 100

Tablet Tespiti

const isTablet = width >= 768 && height >= 1024;

useResponsive() hook’u da tablet tespiti sağlar.

Kullanım

import { SPACING, FONT_SIZES, BORDER_RADIUS } from '@/constants/Dimensions';
 
<View style={{ padding: SPACING.LG, borderRadius: BORDER_RADIUS.MD }}>
  <Text style={{ fontSize: FONT_SIZES.MD }}>İçerik</Text>
</View>

İçerik Tipi Konfigürasyonu

constants/SchoolContentConfig.ts — Her içerik türü için:

  • maxMediaCount: Duyuru=1, Etkinlik=10, Başarı=10
  • textMinLength: 150 karakter zorunlu minimum
  • textMaxLength: Duyuru/Etkinlik=1000, Başarı=1500
  • mediaRoleId: Duyuru=11, Etkinlik=18, Başarı=17