Spaces:
Sleeping
Sleeping
| """ | |
| PriceOye AI — Complete Phone Database | |
| ====================================== | |
| Budget tiers covered (1k – 5 lakh PKR): | |
| • Ultra-budget: 1k – 15k (QMobile, Sparx, itel) | |
| • Entry: 15k – 30k (Infinix, Tecno, Redmi) | |
| • Budget: 30k – 60k (Realme, Nothing, Tecno) | |
| • Mid-range: 60k – 1.5L (Samsung A-series, Xiaomi) | |
| • Upper-mid: 1.5L – 3L (OnePlus, Xiaomi 14T, S24) | |
| • Flagship: 3L+ (S25 Ultra, iPhone 16 Pro Max) | |
| Data sourced from WhatMobile.com.pk + PriceOye.pk (April 2026). | |
| Benchmarks: Samsung S26 Ultra & iPhone 17 Pro Max = 10/10. | |
| """ | |
| from src.scoring_engine import Phone, PhoneDimensions, SubDimension | |
| S = SubDimension | |
| def _p(score, note): | |
| return S(float(score), note) | |
| def build_database() -> list[Phone]: | |
| return [ | |
| # ════════════════════════════════════════════════════ | |
| # ULTRA-BUDGET 1k – 15k PKR | |
| # ════════════════════════════════════════════════════ | |
| Phone( | |
| id="qmobile_noir_a10", name="QMobile Noir A10", brand="QMobile", os="android", | |
| price_pkr=8999, price_label="PKR 8,999", | |
| priceoye_url="https://priceoye.pk/search?q=QMobile+Noir+A10", | |
| whatmobile_url="https://www.whatmobile.com.pk/Qmobile_Noir-A10", | |
| emoji="🟤", tags=["ultra-budget", "entry", "basic", "first-phone"], | |
| highlights={"processor": "Unisoc SC9863A", "ram": "2GB", "storage": "32GB", | |
| "display": '6.1" IPS LCD', "battery": "4000mAh", | |
| "charging": "10W", "camera": "8MP single"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(1.5, "8MP small sensor — basic output"), | |
| camera_aperture=_p(2, "f/2.0 — limited light"), | |
| camera_optical_zoom=_p(0, "No zoom"), | |
| camera_ultrawide=_p(0, "No ultrawide"), | |
| camera_video=_p(1, "720p@30fps only"), | |
| camera_night_mode=_p(1, "No dedicated night mode"), | |
| camera_front=_p(2, "5MP selfie — basic"), | |
| camera_lens_quality=_p(1, "Very basic plastic lens"), | |
| camera_ois=_p(0, "No OIS or EIS"), | |
| perf_cpu=_p(2, "Unisoc SC9863A — very basic daily tasks"), | |
| perf_gpu=_p(2, "IMG8322 — no gaming"), | |
| perf_ram_type=_p(2, "2GB LPDDR4 — minimal"), | |
| perf_thermal=_p(2, "Basic thermal management"), | |
| perf_ai_chip=_p(1, "No AI chip"), | |
| disp_resolution=_p(4, "HD+ 720×1560"), | |
| disp_brightness=_p(3, "~300 nits — dim outdoors"), | |
| disp_color_accuracy=_p(3, "Basic sRGB IPS"), | |
| disp_refresh_rate=_p(2, "60Hz LCD"), | |
| disp_technology=_p(2, "IPS LCD — basic"), | |
| disp_touch_sampling=_p(2, "60Hz touch"), | |
| batt_capacity=_p(5, "4000mAh — sufficient for basic use"), | |
| batt_real_world_sot=_p(5, "~5hrs light use"), | |
| batt_efficiency=_p(4, "SC9863A basic efficiency"), | |
| batt_wireless=_p(0, "No wireless charging"), | |
| charg_wired_speed=_p(2, "10W — very slow, ~3hrs full charge"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(10, "Charger included ✅"), | |
| ram_capacity=_p(2, "2GB — struggles with multiple apps"), | |
| ram_type=_p(3, "LPDDR4"), | |
| ram_os_management=_p(3, "Basic Android Go edition"), | |
| stor_capacity=_p(2, "32GB — fills very quickly"), | |
| stor_speed=_p(2, "eMMC 5.1 basic"), | |
| stor_expandable=_p(8, "microSD up to 128GB ✅"), | |
| build_frame=_p(2, "Plastic frame and back"), | |
| build_ip_rating=_p(0, "No IP rating"), | |
| build_front_glass=_p(2, "Basic unspecified glass"), | |
| build_form_factor=_p(3, "Lightweight — functional design"), | |
| soft_update_policy=_p(1, "No guaranteed updates"), | |
| soft_bloatware=_p(3, "Some QMobile apps + ads"), | |
| soft_ai_features=_p(1, "No AI features"), | |
| soft_ecosystem=_p(2, "No ecosystem"), | |
| audio_speakers=_p(2, "Single mono speaker"), | |
| audio_headphone_jack=_p(8, "3.5mm jack ✅"), | |
| audio_bt_codecs=_p(3, "SBC only"), | |
| ), | |
| ), | |
| Phone( | |
| id="sparx_neo7p", name="Sparx Neo 7 Plus", brand="Sparx", os="android", | |
| price_pkr=13999, price_label="PKR 13,999", | |
| priceoye_url="https://priceoye.pk/search?q=Sparx+Neo+7+Plus", | |
| whatmobile_url="https://www.whatmobile.com.pk/Sparx_Neo-7-Plus", | |
| emoji="🟠", tags=["ultra-budget", "sparx", "selfie", "student"], | |
| highlights={"processor": "Unisoc T606", "ram": "4GB", "storage": "64GB", | |
| "display": '6.56" IPS LCD 90Hz', "battery": "5000mAh", | |
| "charging": "18W", "camera": "50MP dual"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(3, "50MP small sensor — basic quality"), | |
| camera_aperture=_p(3, "f/2.0 main"), | |
| camera_optical_zoom=_p(0, "No optical zoom"), | |
| camera_ultrawide=_p(0, "No ultrawide"), | |
| camera_video=_p(2, "1080p@30fps"), | |
| camera_night_mode=_p(2, "Basic night — noisy"), | |
| camera_front=_p(4, "8MP selfie"), | |
| camera_lens_quality=_p(2, "Budget plastic lens"), | |
| camera_ois=_p(0, "No OIS"), | |
| perf_cpu=_p(3, "Unisoc T606 — basic tasks"), | |
| perf_gpu=_p(3, "Mali-G57 — very light gaming"), | |
| perf_ram_type=_p(3, "4GB LPDDR4X"), | |
| perf_thermal=_p(3, "Basic cooling"), | |
| perf_ai_chip=_p(1, "No AI"), | |
| disp_resolution=_p(5, "HD+ 720×1612"), | |
| disp_brightness=_p(4, "~400 nits"), | |
| disp_color_accuracy=_p(4, "Basic sRGB"), | |
| disp_refresh_rate=_p(5, "90Hz — smooth for price"), | |
| disp_technology=_p(3, "IPS LCD"), | |
| disp_touch_sampling=_p(3, "180Hz"), | |
| batt_capacity=_p(8, "5000mAh — great all-day battery"), | |
| batt_real_world_sot=_p(7, "~8hrs light use"), | |
| batt_efficiency=_p(5, "T606 6nm efficient"), | |
| batt_wireless=_p(0, "None"), | |
| charg_wired_speed=_p(3, "18W — ~90 min"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(10, "Charger in box ✅"), | |
| ram_capacity=_p(3, "4GB — basic multitasking"), | |
| ram_type=_p(4, "LPDDR4X"), | |
| ram_os_management=_p(4, "XOS — aggressive killing"), | |
| stor_capacity=_p(3, "64GB — limited"), | |
| stor_speed=_p(3, "eMMC 5.1"), | |
| stor_expandable=_p(8, "microSD ✅"), | |
| build_frame=_p(2, "Plastic"), | |
| build_ip_rating=_p(0, "No IP"), | |
| build_front_glass=_p(3, "Basic glass"), | |
| build_form_factor=_p(4, "Slim lightweight"), | |
| soft_update_policy=_p(1, "1 year only"), | |
| soft_bloatware=_p(2, "XOS heavy bloat + ads"), | |
| soft_ai_features=_p(1, "Minimal"), | |
| soft_ecosystem=_p(2, "None"), | |
| audio_speakers=_p(3, "Single speaker"), | |
| audio_headphone_jack=_p(8, "3.5mm ✅"), | |
| audio_bt_codecs=_p(3, "SBC only"), | |
| ), | |
| ), | |
| Phone( | |
| id="itel_a70", name="itel A70", brand="itel", os="android", | |
| price_pkr=12999, price_label="PKR 12,999", | |
| priceoye_url="https://priceoye.pk/search?q=itel+A70", | |
| whatmobile_url="https://www.whatmobile.com.pk/Itel_A70", | |
| emoji="🟡", tags=["ultra-budget", "itel", "battery", "affordable"], | |
| highlights={"processor": "Unisoc SC9863A1", "ram": "3GB", "storage": "64GB", | |
| "display": '6.6" IPS LCD 90Hz', "battery": "5000mAh", | |
| "charging": "10W", "camera": "8MP single"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(2, "8MP — very basic photos"), | |
| camera_aperture=_p(3, "f/2.0"), | |
| camera_optical_zoom=_p(0, "None"), | |
| camera_ultrawide=_p(0, "None"), | |
| camera_video=_p(1, "720p only"), | |
| camera_night_mode=_p(1, "No night mode"), | |
| camera_front=_p(2, "5MP selfie"), | |
| camera_lens_quality=_p(1, "Basic plastic lens"), | |
| camera_ois=_p(0, "None"), | |
| perf_cpu=_p(2, "SC9863A1 — very basic"), | |
| perf_gpu=_p(2, "IMG8322"), | |
| perf_ram_type=_p(3, "3GB LPDDR4"), | |
| perf_thermal=_p(2, "Basic"), | |
| perf_ai_chip=_p(1, "None"), | |
| disp_resolution=_p(5, "HD+ 720×1612"), | |
| disp_brightness=_p(3, "~350 nits"), | |
| disp_color_accuracy=_p(3, "Basic sRGB"), | |
| disp_refresh_rate=_p(5, "90Hz smooth for price"), | |
| disp_technology=_p(3, "IPS LCD"), | |
| disp_touch_sampling=_p(3, "180Hz"), | |
| batt_capacity=_p(8, "5000mAh — strong endurance"), | |
| batt_real_world_sot=_p(8, "~9hrs light use — battery highlight"), | |
| batt_efficiency=_p(4, "SC9863A1 efficient for basic tasks"), | |
| batt_wireless=_p(0, "None"), | |
| charg_wired_speed=_p(2, "10W — 3+ hours to charge"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(10, "Charger included ✅"), | |
| ram_capacity=_p(3, "3GB"), | |
| ram_type=_p(3, "LPDDR4"), | |
| ram_os_management=_p(3, "XOS — aggressive"), | |
| stor_capacity=_p(3, "64GB"), | |
| stor_speed=_p(2, "eMMC 5.1"), | |
| stor_expandable=_p(8, "microSD ✅"), | |
| build_frame=_p(2, "Full plastic"), | |
| build_ip_rating=_p(0, "No IP"), | |
| build_front_glass=_p(2, "Basic"), | |
| build_form_factor=_p(3, "Thin lightweight"), | |
| soft_update_policy=_p(1, "1 year only"), | |
| soft_bloatware=_p(2, "Heavy bloat + ads"), | |
| soft_ai_features=_p(1, "None"), | |
| soft_ecosystem=_p(1, "None"), | |
| audio_speakers=_p(2, "Mono"), | |
| audio_headphone_jack=_p(8, "3.5mm ✅"), | |
| audio_bt_codecs=_p(3, "SBC"), | |
| ), | |
| ), | |
| # ════════════════════════════════════════════════════ | |
| # ENTRY 15k – 30k PKR | |
| # ════════════════════════════════════════════════════ | |
| Phone( | |
| id="infinix_smart9", name="Infinix Smart 9", brand="Infinix", os="android", | |
| price_pkr=24999, price_label="PKR 24,999", | |
| priceoye_url="https://priceoye.pk/search?q=Infinix+Smart+9", | |
| whatmobile_url="https://www.whatmobile.com.pk/Infinix_Smart-9", | |
| emoji="🟢", tags=["entry", "battery", "student", "infinix"], | |
| highlights={"processor": "MediaTek Helio G85", "ram": "4GB", "storage": "128GB", | |
| "display": '6.78" IPS LCD 90Hz', "battery": "5000mAh", | |
| "charging": "18W", "camera": "50MP single"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(3.5, "50MP small sensor — basic daily shots"), | |
| camera_aperture=_p(4, "f/1.8"), | |
| camera_optical_zoom=_p(0, "None"), | |
| camera_ultrawide=_p(0, "None"), | |
| camera_video=_p(2, "1080p@30fps"), | |
| camera_night_mode=_p(3, "Basic AI night"), | |
| camera_front=_p(4, "8MP selfie"), | |
| camera_lens_quality=_p(2, "Budget optics"), | |
| camera_ois=_p(0, "EIS only"), | |
| perf_cpu=_p(4, "Helio G85 — good for entry gaming"), | |
| perf_gpu=_p(4, "Mali-G52 MC2"), | |
| perf_ram_type=_p(4, "4GB LPDDR4X"), | |
| perf_thermal=_p(3, "Basic cooling"), | |
| perf_ai_chip=_p(2, "Minimal"), | |
| disp_resolution=_p(6, "FHD+ 1080×2460"), | |
| disp_brightness=_p(4, "~500 nits"), | |
| disp_color_accuracy=_p(4, "sRGB IPS"), | |
| disp_refresh_rate=_p(5, "90Hz — smooth"), | |
| disp_technology=_p(4, "IPS LCD"), | |
| disp_touch_sampling=_p(4, "180Hz"), | |
| batt_capacity=_p(8, "5000mAh — full day"), | |
| batt_real_world_sot=_p(7, "~8hrs"), | |
| batt_efficiency=_p(5, "G85 moderate"), | |
| batt_wireless=_p(0, "None"), | |
| charg_wired_speed=_p(3, "18W — ~90 min"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(10, "Charger in box ✅"), | |
| ram_capacity=_p(3, "4GB"), | |
| ram_type=_p(4, "LPDDR4X"), | |
| ram_os_management=_p(4, "XOS — moderate"), | |
| stor_capacity=_p(5, "128GB — solid for entry"), | |
| stor_speed=_p(3, "eMMC 5.1"), | |
| stor_expandable=_p(8, "microSD ✅"), | |
| build_frame=_p(3, "Plastic"), | |
| build_ip_rating=_p(0, "No IP"), | |
| build_front_glass=_p(4, "Gorilla Glass 3"), | |
| build_form_factor=_p(4, "Decent design"), | |
| soft_update_policy=_p(2, "1-2 years"), | |
| soft_bloatware=_p(3, "XOS bloat"), | |
| soft_ai_features=_p(2, "Basic"), | |
| soft_ecosystem=_p(2, "Minimal"), | |
| audio_speakers=_p(4, "Single — average"), | |
| audio_headphone_jack=_p(8, "3.5mm ✅"), | |
| audio_bt_codecs=_p(4, "AAC + SBC"), | |
| ), | |
| ), | |
| Phone( | |
| id="redmi14c", name="Xiaomi Redmi 14C", brand="Xiaomi", os="android", | |
| price_pkr=29999, price_label="PKR 29,999", | |
| priceoye_url="https://priceoye.pk/search?q=Xiaomi+Redmi+14C", | |
| whatmobile_url="https://www.whatmobile.com.pk/Xiaomi_Redmi-14C", | |
| emoji="💙", tags=["entry", "student", "battery", "256gb"], | |
| highlights={"processor": "MediaTek Helio G85", "ram": "8GB LPDDR4X", | |
| "storage": "256GB eMMC", "display": '6.88" IPS LCD 120Hz HD+', | |
| "battery": "5160mAh", "charging": "18W", "camera": "50MP dual"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(4, "50MP 1/2.76\" — small but 50MP"), | |
| camera_aperture=_p(5, "f/1.8"), | |
| camera_optical_zoom=_p(0, "No zoom"), | |
| camera_ultrawide=_p(0, "No ultrawide"), | |
| camera_video=_p(3, "1080p@30fps"), | |
| camera_night_mode=_p(4, "Basic AI night"), | |
| camera_front=_p(5, "13MP f/2.0"), | |
| camera_lens_quality=_p(3, "Budget optics"), | |
| camera_ois=_p(0, "EIS only"), | |
| perf_cpu=_p(4, "Helio G85 — basic-mid daily tasks"), | |
| perf_gpu=_p(4, "Mali-G52 MC2 — light gaming"), | |
| perf_ram_type=_p(5, "LPDDR4X 8GB"), | |
| perf_thermal=_p(4, "Gets warm in use"), | |
| perf_ai_chip=_p(3, "Minimal"), | |
| disp_resolution=_p(5, "HD+ 1640×720 — not FHD"), | |
| disp_brightness=_p(5, "~500 nits"), | |
| disp_color_accuracy=_p(5, "Standard sRGB"), | |
| disp_refresh_rate=_p(5, "120Hz IPS — smooth"), | |
| disp_technology=_p(4, "IPS LCD"), | |
| disp_touch_sampling=_p(4, "240Hz"), | |
| batt_capacity=_p(8, "5160mAh — best battery in class"), | |
| batt_real_world_sot=_p(8, "~9–10hrs — battery king"), | |
| batt_efficiency=_p(5, "G85 moderate"), | |
| batt_wireless=_p(0, "None"), | |
| charg_wired_speed=_p(3, "18W — ~90 min"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(10, "18W in box ✅"), | |
| ram_capacity=_p(6, "8GB"), | |
| ram_type=_p(5, "LPDDR4X"), | |
| ram_os_management=_p(6, "HyperOS — decent"), | |
| stor_capacity=_p(7, "256GB — great for price"), | |
| stor_speed=_p(3, "eMMC 5.1"), | |
| stor_expandable=_p(8, "microSD ✅"), | |
| build_frame=_p(3, "Plastic"), | |
| build_ip_rating=_p(3, "No IP"), | |
| build_front_glass=_p(4, "Gorilla Glass 3"), | |
| build_form_factor=_p(5, "Large 6.88\" comfortable"), | |
| soft_update_policy=_p(3, "2 years OS"), | |
| soft_bloatware=_p(5, "HyperOS — some apps"), | |
| soft_ai_features=_p(3, "Basic AI"), | |
| soft_ecosystem=_p(5, "Xiaomi ecosystem"), | |
| audio_speakers=_p(4, "Single — basic"), | |
| audio_headphone_jack=_p(8, "3.5mm ✅"), | |
| audio_bt_codecs=_p(4, "AAC + SBC"), | |
| ), | |
| ), | |
| Phone( | |
| id="infinixhot40i", name="Infinix Hot 40i", brand="Infinix", os="android", | |
| price_pkr=27999, price_label="PKR 27,999", | |
| priceoye_url="https://priceoye.pk/search?q=Infinix+Hot+40i", | |
| whatmobile_url="https://www.whatmobile.com.pk/Infinix_Hot-40i", | |
| emoji="🟢", tags=["entry", "budget", "battery", "microsd"], | |
| highlights={"processor": "Unisoc T606", "ram": "8GB", "storage": "128GB", | |
| "display": '6.56" IPS LCD 90Hz', "battery": "5000mAh", | |
| "charging": "18W", "camera": "50MP single"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(4, "50MP small — basic"), | |
| camera_aperture=_p(5, "f/1.6 wide"), | |
| camera_optical_zoom=_p(0, "None"), | |
| camera_ultrawide=_p(0, "None"), | |
| camera_video=_p(3, "1080p@30fps"), | |
| camera_night_mode=_p(3, "Weak night"), | |
| camera_front=_p(4, "8MP selfie"), | |
| camera_lens_quality=_p(3, "Budget optics"), | |
| camera_ois=_p(0, "None"), | |
| perf_cpu=_p(3, "T606 — basic tasks only"), | |
| perf_gpu=_p(3, "Mali-G57 MP1"), | |
| perf_ram_type=_p(5, "LPDDR4X 8GB"), | |
| perf_thermal=_p(3, "Limited thermal"), | |
| perf_ai_chip=_p(2, "None"), | |
| disp_resolution=_p(5, "HD+ 720×1612"), | |
| disp_brightness=_p(4, "~400 nits"), | |
| disp_color_accuracy=_p(4, "Basic sRGB"), | |
| disp_refresh_rate=_p(5, "90Hz"), | |
| disp_technology=_p(4, "IPS LCD"), | |
| disp_touch_sampling=_p(4, "180Hz"), | |
| batt_capacity=_p(8, "5000mAh"), | |
| batt_real_world_sot=_p(8, "~9hrs"), | |
| batt_efficiency=_p(5, "T606 efficient for light use"), | |
| batt_wireless=_p(0, "None"), | |
| charg_wired_speed=_p(3, "18W — ~90 min"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(10, "Included ✅"), | |
| ram_capacity=_p(6, "8GB"), | |
| ram_type=_p(5, "LPDDR4X"), | |
| ram_os_management=_p(5, "XOS moderate"), | |
| stor_capacity=_p(5, "128GB"), | |
| stor_speed=_p(3, "eMMC 5.1"), | |
| stor_expandable=_p(8, "microSD ✅"), | |
| build_frame=_p(3, "Plastic"), | |
| build_ip_rating=_p(0, "None"), | |
| build_front_glass=_p(3, "Basic glass"), | |
| build_form_factor=_p(4, "Lightweight"), | |
| soft_update_policy=_p(2, "1-2 years"), | |
| soft_bloatware=_p(3, "XOS + ads"), | |
| soft_ai_features=_p(2, "Minimal"), | |
| soft_ecosystem=_p(2, "None"), | |
| audio_speakers=_p(4, "Single"), | |
| audio_headphone_jack=_p(8, "3.5mm ✅"), | |
| audio_bt_codecs=_p(3, "SBC"), | |
| ), | |
| ), | |
| # ════════════════════════════════════════════════════ | |
| # BUDGET 30k – 60k PKR | |
| # ════════════════════════════════════════════════════ | |
| Phone( | |
| id="tecnosp40p", name="Tecno Spark 40 Pro", brand="Tecno", os="android", | |
| price_pkr=44999, price_label="PKR 44,999", | |
| priceoye_url="https://priceoye.pk/search?q=Tecno+Spark+40+Pro", | |
| whatmobile_url="https://www.whatmobile.com.pk/Tecno_Spark-40-Pro", | |
| emoji="💚", tags=["budget", "amoled", "45w", "selfie"], | |
| highlights={"processor": "Helio G99", "ram": "8GB", "storage": "128GB", | |
| "display": '6.78" AMOLED 90Hz', "battery": "5000mAh", | |
| "charging": "45W", "camera": "48MP dual"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(4, "48MP 1/2.0\" small sensor"), | |
| camera_aperture=_p(5, "f/1.8"), | |
| camera_optical_zoom=_p(0, "None"), | |
| camera_ultrawide=_p(0, "None"), | |
| camera_video=_p(3, "1080p@30fps"), | |
| camera_night_mode=_p(4, "Basic AI night"), | |
| camera_front=_p(5, "32MP f/2.0 selfie — standout feature"), | |
| camera_lens_quality=_p(3, "Budget glass — soft edges"), | |
| camera_ois=_p(0, "EIS only"), | |
| perf_cpu=_p(4, "Helio G99 — solid budget-gaming"), | |
| perf_gpu=_p(4, "Mali-G57 — PUBG at low-medium"), | |
| perf_ram_type=_p(5, "LPDDR4X 8GB"), | |
| perf_thermal=_p(4, "Throttles in long sessions"), | |
| perf_ai_chip=_p(3, "Basic AI"), | |
| disp_resolution=_p(7, "FHD+ 2460×1080 — sharp"), | |
| disp_brightness=_p(5, "600 nits typical"), | |
| disp_color_accuracy=_p(5, "AMOLED sRGB — vivid"), | |
| disp_refresh_rate=_p(5, "90Hz AMOLED"), | |
| disp_technology=_p(6, "AMOLED — impressive for under 50k"), | |
| disp_touch_sampling=_p(4, "180Hz"), | |
| batt_capacity=_p(8, "5000mAh"), | |
| batt_real_world_sot=_p(7, "~8hrs"), | |
| batt_efficiency=_p(5, "G99 6nm moderate"), | |
| batt_wireless=_p(0, "None"), | |
| charg_wired_speed=_p(6, "45W — ~55 min — fast for price"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(10, "45W in box ✅"), | |
| ram_capacity=_p(6, "8GB"), | |
| ram_type=_p(5, "LPDDR4X"), | |
| ram_os_management=_p(5, "HiOS — aggressive killing"), | |
| stor_capacity=_p(5, "128GB"), | |
| stor_speed=_p(4, "UFS 2.2"), | |
| stor_expandable=_p(8, "microSD ✅"), | |
| build_frame=_p(3, "Plastic"), | |
| build_ip_rating=_p(4, "IP54 splash"), | |
| build_front_glass=_p(4, "Basic glass"), | |
| build_form_factor=_p(5, "Decent for price"), | |
| soft_update_policy=_p(2, "2 years"), | |
| soft_bloatware=_p(3, "HiOS heavy bloat + ads"), | |
| soft_ai_features=_p(2, "Minimal"), | |
| soft_ecosystem=_p(3, "None notable"), | |
| audio_speakers=_p(4, "Single bottom"), | |
| audio_headphone_jack=_p(8, "3.5mm ✅"), | |
| audio_bt_codecs=_p(4, "AAC + SBC"), | |
| ), | |
| ), | |
| Phone( | |
| id="realme12pp", name="Realme 12 Pro+", brand="Realme", os="android", | |
| price_pkr=72999, price_label="PKR 72,999", | |
| priceoye_url="https://priceoye.pk/search?q=Realme+12+Pro+Plus", | |
| whatmobile_url="https://www.whatmobile.com.pk/Realme_12-Pro-Plus", | |
| emoji="🎯", tags=["budget", "periscope", "camera", "67w", "curved"], | |
| highlights={"processor": "Snapdragon 7s Gen 2", "ram": "8GB LPDDR4X", | |
| "storage": "256GB UFS 2.2", "display": '6.7" Curved AMOLED 120Hz', | |
| "battery": "5000mAh", "charging": "67W SUPERVOOC", | |
| "camera": "50MP Sony IMX890 + 3x periscope"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(7, "50MP 1/1.56\" Sony IMX890"), | |
| camera_aperture=_p(7, "f/1.8 main"), | |
| camera_optical_zoom=_p(7, "3x optical periscope — impressive at price"), | |
| camera_ultrawide=_p(5, "8MP f/2.2 — weak"), | |
| camera_video=_p(5, "4K@30fps only"), | |
| camera_night_mode=_p(6, "Decent AI night"), | |
| camera_front=_p(6, "32MP f/2.4"), | |
| camera_lens_quality=_p(6, "Standard optics"), | |
| camera_ois=_p(7, "OIS main + periscope"), | |
| perf_cpu=_p(5, "SD 7s Gen 2 — mid-range"), | |
| perf_gpu=_p(5, "Adreno 710 — casual gaming"), | |
| perf_ram_type=_p(5, "LPDDR4X 8GB"), | |
| perf_thermal=_p(5, "Throttles in PUBG long sessions"), | |
| perf_ai_chip=_p(4, "Basic AI"), | |
| disp_resolution=_p(7, "FHD+ 2412×1080"), | |
| disp_brightness=_p(7, "950 nits HBM"), | |
| disp_color_accuracy=_p(7, "Adequate P3"), | |
| disp_refresh_rate=_p(7, "120Hz non-adaptive"), | |
| disp_technology=_p(7, "Curved AMOLED — premium look"), | |
| disp_touch_sampling=_p(5, "240Hz"), | |
| batt_capacity=_p(8, "5000mAh"), | |
| batt_real_world_sot=_p(7, "~7–8hrs"), | |
| batt_efficiency=_p(6, "SD 7s Gen2 moderate"), | |
| batt_wireless=_p(0, "None"), | |
| charg_wired_speed=_p(8, "67W SUPERVOOC — ~45 min"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(10, "67W in box ✅"), | |
| ram_capacity=_p(6, "8GB"), | |
| ram_type=_p(5, "LPDDR4X"), | |
| ram_os_management=_p(6, "Realme UI — decent"), | |
| stor_capacity=_p(7, "256GB"), | |
| stor_speed=_p(4, "UFS 2.2 — slow"), | |
| stor_expandable=_p(0, "No microSD"), | |
| build_frame=_p(6, "Plastic frame"), | |
| build_ip_rating=_p(0, "No IP rating"), | |
| build_front_glass=_p(6, "Gorilla Glass 5"), | |
| build_form_factor=_p(7, "Curved back — premium feel"), | |
| soft_update_policy=_p(4, "2 years OS · 3 years security"), | |
| soft_bloatware=_p(5, "Realme UI notable bloat"), | |
| soft_ai_features=_p(4, "Basic AI"), | |
| soft_ecosystem=_p(5, "Standalone"), | |
| audio_speakers=_p(6, "Stereo basic"), | |
| audio_headphone_jack=_p(0, "No 3.5mm"), | |
| audio_bt_codecs=_p(5, "AAC + SBC"), | |
| ), | |
| ), | |
| # ════════════════════════════════════════════════════ | |
| # MID-RANGE 60k – 1.5L PKR | |
| # ════════════════════════════════════════════════════ | |
| Phone( | |
| id="nothing3a", name="Nothing Phone (3a)", brand="Nothing", os="android", | |
| price_pkr=89999, price_label="PKR 89,999", | |
| priceoye_url="https://priceoye.pk/search?q=Nothing+Phone+3a", | |
| whatmobile_url="https://www.whatmobile.com.pk/Nothing_Phone-3a", | |
| emoji="⬛", tags=["mid-range", "design", "glyph", "clean", "periscope"], | |
| highlights={"processor": "Snapdragon 7s Gen 3", "ram": "8GB LPDDR4X", | |
| "storage": "128GB UFS 2.2", "display": '6.77" AMOLED 120Hz', | |
| "battery": "5000mAh", "charging": "50W", | |
| "camera": "50MP periscope triple · Glyph interface"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(6, "50MP 1/1.56\" — average for class"), | |
| camera_aperture=_p(6, "f/1.88 main"), | |
| camera_optical_zoom=_p(7, "3x optical periscope — rare at price"), | |
| camera_ultrawide=_p(4, "8MP ultrawide — weak"), | |
| camera_video=_p(5, "4K@30fps — no 60fps"), | |
| camera_night_mode=_p(5, "Night below class average"), | |
| camera_front=_p(5, "16MP f/2.2"), | |
| camera_lens_quality=_p(5, "Generic glass"), | |
| camera_ois=_p(6, "OIS main + periscope"), | |
| perf_cpu=_p(6, "SD 7s Gen 3 — mid-tier daily"), | |
| perf_gpu=_p(6, "Adreno 710 — casual gaming"), | |
| perf_ram_type=_p(5, "LPDDR4X 8GB"), | |
| perf_thermal=_p(6, "Good for chip tier"), | |
| perf_ai_chip=_p(5, "Basic AI"), | |
| disp_resolution=_p(7, "FHD+ 2392×1080"), | |
| disp_brightness=_p(7, "1300 nits HBM"), | |
| disp_color_accuracy=_p(7, "sRGB + DCI-P3"), | |
| disp_refresh_rate=_p(7, "120Hz non-adaptive"), | |
| disp_technology=_p(7, "AMOLED — punchy"), | |
| disp_touch_sampling=_p(6, "240Hz"), | |
| batt_capacity=_p(8, "5000mAh"), | |
| batt_real_world_sot=_p(8, "~8hrs SOT"), | |
| batt_efficiency=_p(7, "SD 7s Gen3 efficient"), | |
| batt_wireless=_p(0, "None"), | |
| charg_wired_speed=_p(7, "50W — ~45 min"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(0, "No charger in box"), | |
| ram_capacity=_p(6, "8GB"), | |
| ram_type=_p(5, "LPDDR4X"), | |
| ram_os_management=_p(8, "Nothing OS — very clean near-stock"), | |
| stor_capacity=_p(5, "128GB"), | |
| stor_speed=_p(4, "UFS 2.2"), | |
| stor_expandable=_p(0, "No microSD"), | |
| build_frame=_p(7, "Transparent aluminium accents"), | |
| build_ip_rating=_p(7, "IP54 — splash only"), | |
| build_front_glass=_p(7, "Gorilla Glass 5"), | |
| build_form_factor=_p(9, "Iconic Glyph LED interface — unique identity"), | |
| soft_update_policy=_p(6, "3 years OS · 4 years security"), | |
| soft_bloatware=_p(10, "Nothing OS — zero bloat"), | |
| soft_ai_features=_p(5, "Essential Space · basic AI"), | |
| soft_ecosystem=_p(5, "Standalone"), | |
| audio_speakers=_p(7, "Stereo decent"), | |
| audio_headphone_jack=_p(0, "No 3.5mm"), | |
| audio_bt_codecs=_p(7, "LDAC + AAC"), | |
| ), | |
| ), | |
| Phone( | |
| id="a26_5g", name="Samsung Galaxy A26 5G", brand="Samsung", os="android", | |
| price_pkr=71999, price_label="PKR 71,999", | |
| priceoye_url="https://priceoye.pk/search?q=Samsung+Galaxy+A26+5G", | |
| whatmobile_url="https://www.whatmobile.com.pk/Samsung_Galaxy-A26-5G", | |
| emoji="🔵", tags=["5g", "mid-range", "7years", "galaxy-ai", "student"], | |
| highlights={"processor": "Exynos 1380 (5nm)", "ram": "8GB LPDDR4X", | |
| "storage": "256GB UFS 2.2", "display": '6.7" Super AMOLED 120Hz', | |
| "battery": "5000mAh", "charging": "25W", | |
| "camera": "50MP+8MP+2MP · 13MP selfie"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(7, "50MP 1/1.56\" — good for class"), | |
| camera_aperture=_p(7, "f/1.8 solid"), | |
| camera_optical_zoom=_p(4, "8MP 3x — limited quality"), | |
| camera_ultrawide=_p(6, "8MP f/2.2"), | |
| camera_video=_p(6, "4K@30fps"), | |
| camera_night_mode=_p(7, "Nightography — good"), | |
| camera_front=_p(7, "13MP f/2.2 autofocus"), | |
| camera_lens_quality=_p(7, "Samsung quality optics"), | |
| camera_ois=_p(6, "OIS main"), | |
| perf_cpu=_p(6, "Exynos 1380 5nm — capable"), | |
| perf_gpu=_p(6, "Mali-G68 MP5"), | |
| perf_ram_type=_p(5, "LPDDR4X 8GB"), | |
| perf_thermal=_p(6, "Good everyday use"), | |
| perf_ai_chip=_p(7, "Galaxy AI supported"), | |
| disp_resolution=_p(7, "FHD+ 1080×2340"), | |
| disp_brightness=_p(7, "~1000 nits HBM"), | |
| disp_color_accuracy=_p(7, "Good P3 coverage"), | |
| disp_refresh_rate=_p(7, "120Hz"), | |
| disp_technology=_p(8, "Super AMOLED — vivid Samsung panel"), | |
| disp_touch_sampling=_p(5, "Standard touch"), | |
| batt_capacity=_p(8, "5000mAh"), | |
| batt_real_world_sot=_p(8, "~8–9hrs · 17hr video"), | |
| batt_efficiency=_p(7, "Exynos 1380 5nm"), | |
| batt_wireless=_p(0, "None"), | |
| charg_wired_speed=_p(4, "25W"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(0, "No charger in box"), | |
| ram_capacity=_p(6, "8GB"), | |
| ram_type=_p(5, "LPDDR4X"), | |
| ram_os_management=_p(8, "One UI — clean · RAM Plus"), | |
| stor_capacity=_p(7, "256GB"), | |
| stor_speed=_p(4, "UFS 2.2"), | |
| stor_expandable=_p(0, "No microSD"), | |
| build_frame=_p(7, "Aluminium frame"), | |
| build_ip_rating=_p(7, "IP67"), | |
| build_front_glass=_p(8, "Gorilla Glass Victus+"), | |
| build_form_factor=_p(7, "Slim 197g"), | |
| soft_update_policy=_p(10, "7 years OS + security — best in class for any price"), | |
| soft_bloatware=_p(7, "One UI — minimal"), | |
| soft_ai_features=_p(7, "Galaxy AI · Circle to Search"), | |
| soft_ecosystem=_p(8, "Samsung ecosystem · Samsung Pay"), | |
| audio_speakers=_p(7, "Stereo Dolby Atmos"), | |
| audio_headphone_jack=_p(0, "No 3.5mm"), | |
| audio_bt_codecs=_p(7, "AAC + SBC"), | |
| ), | |
| ), | |
| Phone( | |
| id="a55", name="Samsung Galaxy A55", brand="Samsung", os="android", | |
| price_pkr=139999, price_label="PKR 1,39,999", | |
| priceoye_url="https://priceoye.pk/search?q=Samsung+Galaxy+A55", | |
| whatmobile_url="https://www.whatmobile.com.pk/Samsung_Galaxy-A55", | |
| emoji="📘", tags=["mid-range", "student", "camera", "battery"], | |
| highlights={"processor": "Exynos 1480 (4nm)", "ram": "8GB LPDDR4X", | |
| "storage": "256GB UFS 2.2", "display": '6.6" Super AMOLED 120Hz', | |
| "battery": "5000mAh", "charging": "25W", | |
| "camera": "50MP OIS triple · 32MP selfie"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(6, "50MP 1/1.7\" — decent mid-range"), | |
| camera_aperture=_p(7, "f/1.8 good entry"), | |
| camera_optical_zoom=_p(3, "3x digital only — no optical"), | |
| camera_ultrawide=_p(6, "12MP f/2.2"), | |
| camera_video=_p(5, "4K@30fps"), | |
| camera_night_mode=_p(6, "Decent night for price"), | |
| camera_front=_p(6, "32MP f/2.2"), | |
| camera_lens_quality=_p(6, "Standard Samsung optics"), | |
| camera_ois=_p(6, "OIS main camera"), | |
| perf_cpu=_p(5, "Exynos 1480 4nm — solid mid-range"), | |
| perf_gpu=_p(5, "Xclipse 540 — limited gaming"), | |
| perf_ram_type=_p(5, "LPDDR4X 8GB — older gen"), | |
| perf_thermal=_p(5, "Moderate thermal management"), | |
| perf_ai_chip=_p(5, "Basic AI"), | |
| disp_resolution=_p(7, "FHD+ 2340×1080"), | |
| disp_brightness=_p(6, "1000 nits HBM"), | |
| disp_color_accuracy=_p(7, "Good sRGB + DCI-P3"), | |
| disp_refresh_rate=_p(7, "120Hz non-adaptive"), | |
| disp_technology=_p(7, "Super AMOLED vivid"), | |
| disp_touch_sampling=_p(5, "240Hz"), | |
| batt_capacity=_p(8, "5000mAh — strong for mid-range"), | |
| batt_real_world_sot=_p(8, "~8–9hrs SOT battery standout"), | |
| batt_efficiency=_p(6, "Exynos 1480 decent"), | |
| batt_wireless=_p(0, "None"), | |
| charg_wired_speed=_p(4, "25W"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(0, "No charger in box"), | |
| ram_capacity=_p(6, "8GB"), | |
| ram_type=_p(5, "LPDDR4X older gen"), | |
| ram_os_management=_p(7, "One UI · RAM Plus"), | |
| stor_capacity=_p(7, "256GB solid"), | |
| stor_speed=_p(4, "UFS 2.2 — noticeably slow"), | |
| stor_expandable=_p(0, "No microSD"), | |
| build_frame=_p(7, "Aluminium frame solid"), | |
| build_ip_rating=_p(7, "IP67"), | |
| build_front_glass=_p(7, "Gorilla Glass Victus+"), | |
| build_form_factor=_p(7, "Slim 198g good grip"), | |
| soft_update_policy=_p(8, "4 years OS · 5 years security"), | |
| soft_bloatware=_p(6, "Samsung + carrier apps"), | |
| soft_ai_features=_p(6, "Basic Galaxy AI subset"), | |
| soft_ecosystem=_p(7, "Samsung Pay · Galaxy ecosystem"), | |
| audio_speakers=_p(6, "Stereo basic Dolby"), | |
| audio_headphone_jack=_p(0, "No 3.5mm"), | |
| audio_bt_codecs=_p(6, "AAC + SBC"), | |
| ), | |
| ), | |
| # ════════════════════════════════════════════════════ | |
| # UPPER MID 1.5L – 3L PKR | |
| # ════════════════════════════════════════════════════ | |
| Phone( | |
| id="s24fe", name="Samsung Galaxy S24 FE", brand="Samsung", os="android", | |
| price_pkr=134999, price_label="PKR 1,34,999", | |
| priceoye_url="https://priceoye.pk/search?q=Samsung+Galaxy+S24+FE", | |
| whatmobile_url="https://www.whatmobile.com.pk/Samsung_Galaxy-S24-FE", | |
| emoji="⭐", tags=["upper-mid", "samsung", "galaxy-ai", "7years"], | |
| highlights={"processor": "Exynos 2500 (3nm)", "ram": "8GB LPDDR5", | |
| "storage": "256GB UFS 3.1", "display": '6.7" FHD+ 120Hz AMOLED', | |
| "battery": "4700mAh", "charging": "25W · 15W wireless", | |
| "camera": "50MP triple · 3x optical"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(7, "50MP 1/1.56\" sensor"), | |
| camera_aperture=_p(7, "f/1.8 main"), | |
| camera_optical_zoom=_p(6, "3x optical telephoto — no periscope"), | |
| camera_ultrawide=_p(6, "12MP f/2.2"), | |
| camera_video=_p(7, "4K@60fps — solid"), | |
| camera_night_mode=_p(7, "Nightography AI"), | |
| camera_front=_p(7, "10MP f/2.4"), | |
| camera_lens_quality=_p(7, "Samsung quality glass"), | |
| camera_ois=_p(7, "OIS main + tele"), | |
| perf_cpu=_p(8, "Exynos 2500 3nm — strong mid-range"), | |
| perf_gpu=_p(7, "Xclipse 950"), | |
| perf_ram_type=_p(8, "LPDDR5 8GB"), | |
| perf_thermal=_p(7, "Adequate thermal"), | |
| perf_ai_chip=_p(7, "Galaxy AI NPU capable"), | |
| disp_resolution=_p(7, "FHD+ 2340×1080"), | |
| disp_brightness=_p(7, "1900 nits peak"), | |
| disp_color_accuracy=_p(8, "Good DCI-P3"), | |
| disp_refresh_rate=_p(7, "120Hz non-LTPO"), | |
| disp_technology=_p(8, "Dynamic AMOLED 2X"), | |
| disp_touch_sampling=_p(6, "240Hz"), | |
| batt_capacity=_p(7, "4700mAh adequate"), | |
| batt_real_world_sot=_p(7, "~7–8hrs SOT"), | |
| batt_efficiency=_p(7, "Exynos 2500 decent"), | |
| batt_wireless=_p(6, "15W wireless"), | |
| charg_wired_speed=_p(4, "25W · ~65 min"), | |
| charg_wireless_speed=_p(5, "15W wireless"), | |
| charg_reverse=_p(4, "4.5W reverse"), | |
| charg_inbox_charger=_p(0, "No charger in box"), | |
| ram_capacity=_p(6, "8GB"), | |
| ram_type=_p(8, "LPDDR5"), | |
| ram_os_management=_p(8, "One UI · RAM Plus"), | |
| stor_capacity=_p(7, "256GB"), | |
| stor_speed=_p(8, "UFS 3.1"), | |
| stor_expandable=_p(0, "No microSD"), | |
| build_frame=_p(7, "Aluminium frame"), | |
| build_ip_rating=_p(10, "IP68"), | |
| build_front_glass=_p(8, "Gorilla Glass Victus"), | |
| build_form_factor=_p(8, "Balanced 213g"), | |
| soft_update_policy=_p(10, "7 years OS + security — best mid-range class"), | |
| soft_bloatware=_p(6, "Samsung apps moderate bloat"), | |
| soft_ai_features=_p(8, "Galaxy AI · Circle to Search · AI photo edit"), | |
| soft_ecosystem=_p(8, "Samsung Pay · SmartThings"), | |
| audio_speakers=_p(7, "Stereo Dolby Atmos"), | |
| audio_headphone_jack=_p(0, "No 3.5mm"), | |
| audio_bt_codecs=_p(8, "LDAC + aptX"), | |
| ), | |
| ), | |
| Phone( | |
| id="mi14tpro", name="Xiaomi 14T Pro", brand="Xiaomi", os="android", | |
| price_pkr=229999, price_label="PKR 2,29,999", | |
| priceoye_url="https://priceoye.pk/search?q=Xiaomi+14T+Pro", | |
| whatmobile_url="https://www.whatmobile.com.pk/Xiaomi_14T-Pro", | |
| emoji="🔥", tags=["upper-mid", "leica", "gaming", "144hz", "120w"], | |
| highlights={"processor": "Dimensity 9300+ (4nm)", "ram": "12GB LPDDR5X", | |
| "storage": "256GB UFS 4.0", "display": '6.67" FHD+ 144Hz AMOLED', | |
| "battery": "5000mAh", "charging": "120W wired", | |
| "camera": "50MP Leica triple"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(8, "50MP 1/1.31\" Light Fusion 900"), | |
| camera_aperture=_p(8, "f/1.6 main bright aperture"), | |
| camera_optical_zoom=_p(7, "2.5x optical tele 50MP"), | |
| camera_ultrawide=_p(8, "12MP f/2.2"), | |
| camera_video=_p(8, "4K@60fps · Leica video"), | |
| camera_night_mode=_p(8, "Leica night + AI solid"), | |
| camera_front=_p(7, "32MP f/2.0"), | |
| camera_lens_quality=_p(9, "Leica Summilux certified — 7 elements"), | |
| camera_ois=_p(8, "OIS main"), | |
| perf_cpu=_p(9, "Dimensity 9300+ flagship tier 4nm"), | |
| perf_gpu=_p(8, "Immortalis-G720 strong gaming"), | |
| perf_ram_type=_p(10, "LPDDR5X 12GB"), | |
| perf_thermal=_p(7, "Some throttle in 30min+ sessions"), | |
| perf_ai_chip=_p(8, "MediaTek APU 790"), | |
| disp_resolution=_p(7, "FHD+ 2712×1220 not QHD"), | |
| disp_brightness=_p(9, "4000 nits peak — excellent outdoor"), | |
| disp_color_accuracy=_p(9, "100% P3 Leica calibration"), | |
| disp_refresh_rate=_p(9, "144Hz adaptive AMOLED gaming advantage"), | |
| disp_technology=_p(9, "AMOLED CrystalRes premium"), | |
| disp_touch_sampling=_p(9, "480Hz — fastest at price tier"), | |
| batt_capacity=_p(8, "5000mAh"), | |
| batt_real_world_sot=_p(8, "~8–9hrs SOT"), | |
| batt_efficiency=_p(8, "Dimensity 9300+ 4nm efficient"), | |
| batt_wireless=_p(0, "No wireless charging"), | |
| charg_wired_speed=_p(10, "120W HyperCharge — ~23 min 0→100% ⚡"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(10, "120W in box ✅"), | |
| ram_capacity=_p(8, "12GB"), | |
| ram_type=_p(10, "LPDDR5X"), | |
| ram_os_management=_p(7, "HyperOS decent"), | |
| stor_capacity=_p(7, "256GB"), | |
| stor_speed=_p(10, "UFS 4.0"), | |
| stor_expandable=_p(0, "No microSD"), | |
| build_frame=_p(8, "Aluminium solid"), | |
| build_ip_rating=_p(8, "IP68"), | |
| build_front_glass=_p(9, "Gorilla Glass 5"), | |
| build_form_factor=_p(8, "Slim 8.39mm 209g"), | |
| soft_update_policy=_p(6, "4 years OS · 5 years security"), | |
| soft_bloatware=_p(6, "HyperOS some bloat"), | |
| soft_ai_features=_p(7, "Xiaomi AI features"), | |
| soft_ecosystem=_p(7, "Xiaomi ecosystem"), | |
| audio_speakers=_p(7, "Stereo Harman Kardon"), | |
| audio_headphone_jack=_p(0, "No 3.5mm"), | |
| audio_bt_codecs=_p(9, "LDAC + aptX HD"), | |
| ), | |
| ), | |
| Phone( | |
| id="op12", name="OnePlus 12", brand="OnePlus", os="android", | |
| price_pkr=189999, price_label="PKR 1,89,999", | |
| priceoye_url="https://priceoye.pk/search?q=OnePlus+12", | |
| whatmobile_url="https://www.whatmobile.com.pk/OnePlus_12", | |
| emoji="⚡", tags=["upper-mid", "hasselblad", "100w", "gaming"], | |
| highlights={"processor": "Snapdragon 8 Gen 3", "ram": "12GB LPDDR5X", | |
| "storage": "256GB UFS 4.0", "display": '6.82" QHD+ 120Hz LTPO3', | |
| "battery": "5400mAh", "charging": "100W · 50W wireless", | |
| "camera": "50MP Hasselblad triple"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(8, "50MP 1/1.43\" Sony LYT-808 large sensor"), | |
| camera_aperture=_p(8, "f/1.6 main excellent entry"), | |
| camera_optical_zoom=_p(7, "3x periscope telephoto"), | |
| camera_ultrawide=_p(8, "48MP f/2.2 high resolution"), | |
| camera_video=_p(8, "4K@120fps Hasselblad movie mode"), | |
| camera_night_mode=_p(8, "Hasselblad Natural Colour + AI night"), | |
| camera_front=_p(7, "32MP f/2.4"), | |
| camera_lens_quality=_p(9, "Hasselblad optics colour science XPan"), | |
| camera_ois=_p(8, "OIS + EIS dual"), | |
| perf_cpu=_p(9, "SD 8 Gen 3 flagship 2024"), | |
| perf_gpu=_p(9, "Adreno 750 excellent gaming"), | |
| perf_ram_type=_p(10, "LPDDR5X 12GB"), | |
| perf_thermal=_p(8, "Large vapor chamber"), | |
| perf_ai_chip=_p(8, "Snapdragon AI"), | |
| disp_resolution=_p(9, "QHD+ 3168×1440 510 PPI"), | |
| disp_brightness=_p(9, "4500 nits peak — very bright"), | |
| disp_color_accuracy=_p(9, "100% P3 Hasselblad colour"), | |
| disp_refresh_rate=_p(8, "1–120Hz LTPO3"), | |
| disp_technology=_p(9, "ProXDR AMOLED LTPO3 premium"), | |
| disp_touch_sampling=_p(9, "360Hz gaming grade"), | |
| batt_capacity=_p(9, "5400mAh largest in class"), | |
| batt_real_world_sot=_p(9, "~10hrs excellent"), | |
| batt_efficiency=_p(9, "SD8 Gen3 3nm efficient"), | |
| batt_wireless=_p(9, "50W AIRVOOC best-in-class Android wireless"), | |
| charg_wired_speed=_p(10, "100W SUPERVOOC — 25 min 0→100% 🚀"), | |
| charg_wireless_speed=_p(9, "50W wireless — class-leading"), | |
| charg_reverse=_p(5, "10W reverse"), | |
| charg_inbox_charger=_p(10, "100W charger + cable in box ✅"), | |
| ram_capacity=_p(8, "12GB"), | |
| ram_type=_p(10, "LPDDR5X"), | |
| ram_os_management=_p(9, "OxygenOS clean near-stock"), | |
| stor_capacity=_p(7, "256GB"), | |
| stor_speed=_p(10, "UFS 4.0"), | |
| stor_expandable=_p(0, "No microSD"), | |
| build_frame=_p(8, "Aluminium premium"), | |
| build_ip_rating=_p(9, "IP65 solid"), | |
| build_front_glass=_p(9, "Gorilla Glass Victus 2"), | |
| build_form_factor=_p(9, "Flowy Emerald silky glass 220g"), | |
| soft_update_policy=_p(7, "4 years OS · 5 years security"), | |
| soft_bloatware=_p(9, "OxygenOS near stock minimal bloat"), | |
| soft_ai_features=_p(7, "OnePlus AI AI Eraser"), | |
| soft_ecosystem=_p(7, "Standalone Buds integration"), | |
| audio_speakers=_p(8, "Stereo Dynaudio tuned"), | |
| audio_headphone_jack=_p(0, "No 3.5mm"), | |
| audio_bt_codecs=_p(10, "LDAC + aptX HD + AAC"), | |
| ), | |
| ), | |
| # ════════════════════════════════════════════════════ | |
| # FLAGSHIP 3L+ PKR | |
| # ════════════════════════════════════════════════════ | |
| Phone( | |
| id="ip15", name="Apple iPhone 15", brand="Apple", os="ios", | |
| price_pkr=284999, price_label="PKR 2,84,999", | |
| priceoye_url="https://priceoye.pk/search?q=iPhone+15", | |
| whatmobile_url="https://www.whatmobile.com.pk/Apple_iPhone-15", | |
| emoji="🍃", tags=["flagship", "ios", "apple", "ecosystem", "usbc"], | |
| highlights={"processor": "Apple A16 Bionic", "ram": "6GB LPDDR5", | |
| "storage": "128GB NVMe", "display": '6.1" Super Retina XDR 60Hz', | |
| "battery": "3877mAh", "charging": "20W · 15W MagSafe", | |
| "camera": "48MP Fusion · Dynamic Island"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(8, "48MP 1/1.5\" Fusion sensor quality over MP"), | |
| camera_aperture=_p(8, "f/1.6 main · f/2.4 ultra"), | |
| camera_optical_zoom=_p(5, "2x optical crop — no dedicated tele"), | |
| camera_ultrawide=_p(7, "12MP f/2.4"), | |
| camera_video=_p(8, "4K@60fps Dolby Vision Cinematic Action Mode"), | |
| camera_night_mode=_p(8, "Photonic Engine excellent"), | |
| camera_front=_p(8, "12MP TrueDepth autofocus Cinematic"), | |
| camera_lens_quality=_p(9, "Apple custom lens best colour science"), | |
| camera_ois=_p(8, "Sensor-shift OIS"), | |
| perf_cpu=_p(9, "A16 Bionic — still top-tier 2026"), | |
| perf_gpu=_p(8, "5-core GPU hardware RT"), | |
| perf_ram_type=_p(7, "LPDDR5 6GB — iOS compensates"), | |
| perf_thermal=_p(9, "Apple sustained perf — no throttle"), | |
| perf_ai_chip=_p(8, "Neural Engine 16-core"), | |
| disp_resolution=_p(8, "2556×1179 Super Retina XDR 460 PPI"), | |
| disp_brightness=_p(8, "2000 nits peak"), | |
| disp_color_accuracy=_p(10, "100% P3 True Tone ΔE<1"), | |
| disp_refresh_rate=_p(3, "60Hz only — no ProMotion"), | |
| disp_technology=_p(8, "OLED — no LTPO no AOD"), | |
| disp_touch_sampling=_p(5, "60Hz touch matches screen"), | |
| batt_capacity=_p(5, "3877mAh — smallest in class"), | |
| batt_real_world_sot=_p(7, "~7hrs SOT A16 saves it"), | |
| batt_efficiency=_p(9, "A16 excellent efficiency"), | |
| batt_wireless=_p(6, "15W MagSafe"), | |
| charg_wired_speed=_p(3, "20W wired — ~95 min very slow"), | |
| charg_wireless_speed=_p(5, "15W MagSafe"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(0, "No charger"), | |
| ram_capacity=_p(5, "6GB iOS manages well"), | |
| ram_type=_p(8, "LPDDR5"), | |
| ram_os_management=_p(10, "iOS best-in-class RAM management"), | |
| stor_capacity=_p(5, "128GB limited"), | |
| stor_speed=_p(10, "Custom NVMe ~3000MB/s"), | |
| stor_expandable=_p(0, "None"), | |
| build_frame=_p(7, "Aluminium not titanium"), | |
| build_ip_rating=_p(10, "IP68 6m/30min deep rated"), | |
| build_front_glass=_p(10, "Ceramic Shield — very tough"), | |
| build_form_factor=_p(9, "Dynamic Island USB-C compact 171g"), | |
| soft_update_policy=_p(9, "6+ years iOS updates proven"), | |
| soft_bloatware=_p(10, "Zero bloatware cleanest OS"), | |
| soft_ai_features=_p(6, "Limited Apple Intelligence A16 partial"), | |
| soft_ecosystem=_p(10, "Full Apple ecosystem Mac iPad Watch AirPods"), | |
| audio_speakers=_p(8, "Stereo Spatial Audio"), | |
| audio_headphone_jack=_p(0, "No 3.5mm"), | |
| audio_bt_codecs=_p(6, "AAC only Apple limitation"), | |
| ), | |
| ), | |
| Phone( | |
| id="rogphone8", name="ASUS ROG Phone 8", brand="ASUS", os="android", | |
| price_pkr=339999, price_label="PKR 3,39,999", | |
| priceoye_url="https://priceoye.pk/search?q=ASUS+ROG+Phone+8", | |
| whatmobile_url="https://www.whatmobile.com.pk/Asus-ROG-Phone-8", | |
| emoji="🎮", tags=["flagship", "gaming", "165hz", "cooling", "pubg"], | |
| highlights={"processor": "Snapdragon 8 Gen 3", "ram": "16GB LPDDR5X", | |
| "storage": "256GB UFS 4.0", "display": '6.78" FHD+ 165Hz AMOLED', | |
| "battery": "5500mAh", "charging": "65W", | |
| "camera": "50MP Sony IMX890 triple · front speakers"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(7, "50MP 1/1.56\" Sony IMX890 solid"), | |
| camera_aperture=_p(7, "f/1.9 main"), | |
| camera_optical_zoom=_p(5, "No periscope — 3x digital"), | |
| camera_ultrawide=_p(7, "13MP f/2.2"), | |
| camera_video=_p(7, "4K@60fps decent for gaming phone"), | |
| camera_night_mode=_p(7, "Adequate night"), | |
| camera_front=_p(6, "32MP f/2.0"), | |
| camera_lens_quality=_p(6, "Standard optics not camera flagship"), | |
| camera_ois=_p(7, "OIS main only"), | |
| perf_cpu=_p(10, "SD 8 Gen 3 flagship — top Antutu"), | |
| perf_gpu=_p(10, "Adreno 750 gaming-grade GPU"), | |
| perf_ram_type=_p(10, "LPDDR5X 16GB gaming beast"), | |
| perf_thermal=_p(10, "AeroActive Cooler compatible best sustained"), | |
| perf_ai_chip=_p(8, "Game Genie AI frame boost"), | |
| disp_resolution=_p(7, "FHD+ 2400×1080"), | |
| disp_brightness=_p(8, "2500 nits peak great for gaming"), | |
| disp_color_accuracy=_p(8, "111.9% DCI-P3 vivid gaming"), | |
| disp_refresh_rate=_p(10, "165Hz — smoothest display available"), | |
| disp_technology=_p(9, "AMOLED MiraVision 1ms response"), | |
| disp_touch_sampling=_p(10, "720Hz — fastest available zero input lag"), | |
| batt_capacity=_p(9, "5500mAh largest in class gaming endurance"), | |
| batt_real_world_sot=_p(9, "~10–11hrs 4–5hrs gaming max settings"), | |
| batt_efficiency=_p(8, "SD8 Gen3 + ROG power management"), | |
| batt_wireless=_p(0, "None"), | |
| charg_wired_speed=_p(8, "65W HyperCharge ~45 min"), | |
| charg_wireless_speed=_p(0, "None"), | |
| charg_reverse=_p(0, "None"), | |
| charg_inbox_charger=_p(10, "65W charger + cable in box ✅"), | |
| ram_capacity=_p(10, "16GB most RAM of any phone in Pakistan"), | |
| ram_type=_p(10, "LPDDR5X"), | |
| ram_os_management=_p(8, "ROG UI Game Genie + reserve mode"), | |
| stor_capacity=_p(7, "256GB 512GB available"), | |
| stor_speed=_p(10, "UFS 4.0 fast game loading"), | |
| stor_expandable=_p(0, "No microSD"), | |
| build_frame=_p(8, "Aluminium gaming design side USB-C"), | |
| build_ip_rating=_p(7, "IP54 splash not submersible"), | |
| build_front_glass=_p(9, "Gorilla Glass Victus 2"), | |
| build_form_factor=_p(7, "Bulky 240g gaming triggers side ports"), | |
| soft_update_policy=_p(5, "2 years OS only"), | |
| soft_bloatware=_p(7, "ROG UI gaming focused minimal non-gaming bloat"), | |
| soft_ai_features=_p(7, "Game Genie AI frame interpolation latency"), | |
| soft_ecosystem=_p(6, "ASUS gaming ecosystem ROG accessories"), | |
| audio_speakers=_p(10, "Front-facing stereo loudest speakers of any phone"), | |
| audio_headphone_jack=_p(8, "3.5mm jack ✅ rare on flagships"), | |
| audio_bt_codecs=_p(10, "LDAC + aptX HD + gaming low-latency mode"), | |
| ), | |
| ), | |
| Phone( | |
| id="huawei70pro", name="Huawei Pura 70 Pro", brand="Huawei", os="android", | |
| price_pkr=229999, price_label="PKR 2,29,999", | |
| priceoye_url="https://priceoye.pk/search?q=Huawei+Pura+70+Pro", | |
| whatmobile_url="https://www.whatmobile.com.pk/Huawei-Pura-70-Pro", | |
| emoji="🌸", tags=["flagship", "leica", "variable-aperture", "88w", "no-google"], | |
| highlights={"processor": "Kirin 9010 (5nm)", "ram": "12GB LPDDR5", | |
| "storage": "512GB UFS 3.1", "display": '6.8" Quad-curve LTPO OLED 120Hz', | |
| "battery": "5050mAh", "charging": "88W · 50W wireless", | |
| "camera": "50MP variable aperture f/1.4–f/4.0 · Leica · 5x periscope"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(10, "50MP 1/1.4\" variable aperture — unique f/1.4–f/4.0"), | |
| camera_aperture=_p(10, "Variable aperture f/1.4–f/4.0 — only phone with true iris"), | |
| camera_optical_zoom=_p(10, "5x periscope + 3.5x optical — dual tele"), | |
| camera_ultrawide=_p(8, "13MP f/2.2"), | |
| camera_video=_p(8, "4K@60fps Leica colour profiles — no 8K"), | |
| camera_night_mode=_p(10, "Leica algorithms best-in-class low-light AIS"), | |
| camera_front=_p(8, "13MP f/2.4"), | |
| camera_lens_quality=_p(10, "Leica Summilux/Summarit certified — 7 elements"), | |
| camera_ois=_p(10, "OIS + AIS Huawei AI Stabilisation both lenses"), | |
| perf_cpu=_p(8, "Kirin 9010 5nm solid but trails SD 8 Elite"), | |
| perf_gpu=_p(7, "Maleoon 910 good media limited heavy gaming"), | |
| perf_ram_type=_p(8, "LPDDR5 12GB"), | |
| perf_thermal=_p(8, "Good thermal no aggressive throttle"), | |
| perf_ai_chip=_p(9, "Huawei NPU strong on-device AI"), | |
| disp_resolution=_p(9, "2844×1260 LTPO OLED 460 PPI"), | |
| disp_brightness=_p(9, "2500 nits peak"), | |
| disp_color_accuracy=_p(9, "100% P3 Leica colour science"), | |
| disp_refresh_rate=_p(8, "1–120Hz LTPO"), | |
| disp_technology=_p(9, "Quad-curve LTPO OLED premium"), | |
| disp_touch_sampling=_p(7, "300Hz"), | |
| batt_capacity=_p(8, "5050mAh solid"), | |
| batt_real_world_sot=_p(9, "~10hrs+ SOT excellent"), | |
| batt_efficiency=_p(9, "Kirin 9010 excellent power management"), | |
| batt_wireless=_p(10, "50W wireless fastest available"), | |
| charg_wired_speed=_p(9, "88W SuperCharge — ~30 min 0→100% 🚀"), | |
| charg_wireless_speed=_p(10, "50W wireless class-leading"), | |
| charg_reverse=_p(7, "20W reverse wireless"), | |
| charg_inbox_charger=_p(10, "88W charger included ✅"), | |
| ram_capacity=_p(8, "12GB"), | |
| ram_type=_p(8, "LPDDR5"), | |
| ram_os_management=_p(8, "HarmonyOS 4 efficient"), | |
| stor_capacity=_p(10, "512GB base most storage at tier"), | |
| stor_speed=_p(8, "UFS 3.1 ~2000MB/s"), | |
| stor_expandable=_p(0, "No microSD"), | |
| build_frame=_p(9, "Aluminium alloy premium"), | |
| build_ip_rating=_p(10, "IP68"), | |
| build_front_glass=_p(9, "Kunlun Glass very tough"), | |
| build_form_factor=_p(10, "Luxury vegan leather/glass back premium feel"), | |
| soft_update_policy=_p(7, "HarmonyOS updates — no Google services"), | |
| soft_bloatware=_p(8, "Clean HarmonyOS 4 minimal"), | |
| soft_ai_features=_p(8, "Strong AI — no Google ecosystem"), | |
| soft_ecosystem=_p(5, "No Google Play — Huawei AppGallery limited apps"), | |
| audio_speakers=_p(8, "Stereo Harman Kardon"), | |
| audio_headphone_jack=_p(0, "No 3.5mm"), | |
| audio_bt_codecs=_p(9, "LDAC + L2HC Huawei hi-res codec"), | |
| ), | |
| ), | |
| Phone( | |
| id="s25u", name="Samsung Galaxy S25 Ultra", brand="Samsung", os="android", | |
| price_pkr=414999, price_label="PKR 4,14,999", | |
| priceoye_url="https://priceoye.pk/search?q=Samsung+Galaxy+S25+Ultra", | |
| whatmobile_url="https://www.whatmobile.com.pk/Samsung_Galaxy-S25-Ultra", | |
| emoji="🏆", tags=["flagship", "premium", "s-pen", "camera", "gaming"], | |
| highlights={"processor": "Snapdragon 8 Elite (3nm)", "ram": "12GB LPDDR5X", | |
| "storage": "256GB UFS 4.0", "display": '6.9" QHD+ 120Hz LTPO AMOLED', | |
| "battery": "5000mAh", "charging": "45W · 15W wireless", | |
| "camera": "200MP quad · 8K video · 5x periscope · S Pen"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(10, "200MP 1/1.3\" Samsung ISOCELL HP2 — benchmark reference"), | |
| camera_aperture=_p(9, "f/1.7 main · f/3.4 periscope · f/2.2 ultrawide"), | |
| camera_optical_zoom=_p(10, "5x periscope + 3x optical dual tele system"), | |
| camera_ultrawide=_p(9, "50MP f/1.9 dual-pixel PDAF"), | |
| camera_video=_p(10, "8K@30fps · 4K@120fps · Log video · Director's View"), | |
| camera_night_mode=_p(10, "Expert RAW · Nightography AI multi-frame"), | |
| camera_front=_p(9, "12MP f/2.2 autofocus 4K"), | |
| camera_lens_quality=_p(9, "Custom Samsung optics multi-layer coating"), | |
| camera_ois=_p(10, "OIS on all 4 cameras + VDIS"), | |
| perf_cpu=_p(10, "SD 8 Elite fastest Android SoC 2025"), | |
| perf_gpu=_p(10, "Adreno 830 top-tier mobile GPU"), | |
| perf_ram_type=_p(10, "LPDDR5X 12GB fastest available"), | |
| perf_thermal=_p(8, "Large vapor chamber mild throttle 30min+ gaming"), | |
| perf_ai_chip=_p(10, "Hexagon NPU Galaxy AI Circle to Search on-device"), | |
| disp_resolution=_p(9, "QHD+ 3088×1440 498 PPI"), | |
| disp_brightness=_p(10, "2600 nits peak outdoor brightness"), | |
| disp_color_accuracy=_p(10, "100% DCI-P3 ΔE<1 factory calibration"), | |
| disp_refresh_rate=_p(8, "1–120Hz LTPO adaptive"), | |
| disp_technology=_p(10, "Dynamic AMOLED 2X Gorilla Armor 2"), | |
| disp_touch_sampling=_p(9, "240Hz touch S Pen 2.8ms latency"), | |
| batt_capacity=_p(8, "5000mAh solid flagship"), | |
| batt_real_world_sot=_p(8, "~8–9hrs SOT 1.5 day typical"), | |
| batt_efficiency=_p(9, "SD 8 Elite 3nm excellent"), | |
| batt_wireless=_p(7, "15W Qi2 compatible"), | |
| charg_wired_speed=_p(6, "45W · ~65 min — below competition at price"), | |
| charg_wireless_speed=_p(5, "15W wireless below competition"), | |
| charg_reverse=_p(5, "4.5W reverse wireless"), | |
| charg_inbox_charger=_p(0, "No charger in box"), | |
| ram_capacity=_p(8, "12GB"), | |
| ram_type=_p(10, "LPDDR5X fastest generation"), | |
| ram_os_management=_p(8, "One UI RAM Plus virtual RAM"), | |
| stor_capacity=_p(7, "256GB base 512GB/1TB available"), | |
| stor_speed=_p(10, "UFS 4.0 ~4200MB/s sequential"), | |
| stor_expandable=_p(0, "No microSD"), | |
| build_frame=_p(10, "Titanium armor frame grade 4"), | |
| build_ip_rating=_p(10, "IP68 2m/30min"), | |
| build_front_glass=_p(10, "Corning Gorilla Armor 2 anti-reflective"), | |
| build_form_factor=_p(9, "S Pen built-in 218g premium heft"), | |
| soft_update_policy=_p(10, "7 years OS + 7 years security updates"), | |
| soft_bloatware=_p(7, "Some Samsung/carrier apps"), | |
| soft_ai_features=_p(10, "Galaxy AI Circle to Search Live Translate on-device"), | |
| soft_ecosystem=_p(9, "Samsung Galaxy ecosystem DeX SmartThings S Pen"), | |
| audio_speakers=_p(9, "Stereo AKG tuned Dolby Atmos loud clear"), | |
| audio_headphone_jack=_p(0, "No 3.5mm"), | |
| audio_bt_codecs=_p(10, "LDAC + aptX HD + AAC hi-res wireless"), | |
| ), | |
| ), | |
| Phone( | |
| id="ip16pm", name="Apple iPhone 16 Pro Max", brand="Apple", os="ios", | |
| price_pkr=480999, price_label="PKR 4,80,999", | |
| priceoye_url="https://priceoye.pk/search?q=iPhone+16+Pro+Max", | |
| whatmobile_url="https://www.whatmobile.com.pk/Apple_iPhone-16-Pro-Max", | |
| emoji="🍎", tags=["flagship", "ios", "camera", "video", "ecosystem", "premium"], | |
| highlights={"processor": "Apple A18 Pro (3nm TSMC)", "ram": "8GB LPDDR5", | |
| "storage": "256GB NVMe", "display": '6.9" Super Retina XDR 120Hz ProMotion', | |
| "battery": "4685mAh", "charging": "30W · 25W MagSafe", | |
| "camera": "48MP Fusion · ProRes 4K120fps · 5x periscope"}, | |
| dims=PhoneDimensions( | |
| camera_main_sensor=_p(9, "48MP 1/1.28\" Fusion large individual pixel"), | |
| camera_aperture=_p(9, "f/1.78 main · f/2.2 ultra · f/2.8 periscope"), | |
| camera_optical_zoom=_p(9, "5x tetraprism periscope excellent reach"), | |
| camera_ultrawide=_p(9, "48MP f/2.2 macro ultrawide high resolution"), | |
| camera_video=_p(10, "4K@120fps ProRes Log Dolby Vision cinema grade"), | |
| camera_night_mode=_p(10, "Photonic Engine computational best-in-class"), | |
| camera_front=_p(9, "12MP TrueDepth autofocus 4K front"), | |
| camera_lens_quality=_p(10, "Apple custom precision-ground lens best colour science"), | |
| camera_ois=_p(10, "Sensor-shift OIS 2nd gen best stabilisation"), | |
| perf_cpu=_p(10, "A18 Pro fastest mobile chip 3nm TSMC"), | |
| perf_gpu=_p(10, "6-core GPU hardware ray tracing console gaming"), | |
| perf_ram_type=_p(9, "LPDDR5 8GB iOS uses extremely efficiently"), | |
| perf_thermal=_p(10, "Best sustained performance of any phone no throttle"), | |
| perf_ai_chip=_p(10, "Neural Engine 16-core Apple Intelligence on-device privacy"), | |
| disp_resolution=_p(9, "2868×1320 Super Retina XDR 460 PPI"), | |
| disp_brightness=_p(10, "2000 nits typical 1600 HDR Ceramic Shield"), | |
| disp_color_accuracy=_p(10, "100% P3 True Tone ΔE<1 Display P3"), | |
| disp_refresh_rate=_p(8, "1–120Hz ProMotion LTPO adaptive"), | |
| disp_technology=_p(10, "OLED ProMotion Always-On Ceramic Shield"), | |
| disp_touch_sampling=_p(9, "240Hz touch sampling"), | |
| batt_capacity=_p(7, "4685mAh smaller but A18 Pro offsets"), | |
| batt_real_world_sot=_p(9, "~10–11hrs best battery life of any iPhone ever"), | |
| batt_efficiency=_p(10, "A18 Pro 3nm most efficient mobile SoC"), | |
| batt_wireless=_p(7, "25W MagSafe Qi2 15W"), | |
| charg_wired_speed=_p(4, "30W wired ~75 min slow vs Android flagships"), | |
| charg_wireless_speed=_p(6, "25W MagSafe fastest for any iPhone"), | |
| charg_reverse=_p(0, "No reverse"), | |
| charg_inbox_charger=_p(0, "No charger"), | |
| ram_capacity=_p(6, "8GB less than Android peers iOS compensates"), | |
| ram_type=_p(9, "LPDDR5"), | |
| ram_os_management=_p(10, "iOS RAM management best-in-class zero app reloads"), | |
| stor_capacity=_p(7, "256GB base 512GB/1TB/2TB options"), | |
| stor_speed=_p(10, "Custom NVMe ~3000MB/s fastest mobile storage"), | |
| stor_expandable=_p(0, "None"), | |
| build_frame=_p(10, "Grade 5 Titanium aerospace grade"), | |
| build_ip_rating=_p(10, "IP68 6m/30min deepest rated"), | |
| build_front_glass=_p(10, "Ceramic Shield 2x tougher than competitors"), | |
| build_form_factor=_p(10, "Desert Titanium natural finish premium industrial"), | |
| soft_update_policy=_p(9, "6+ years iOS updates proven track record"), | |
| soft_bloatware=_p(10, "Zero bloatware clean iOS no ads"), | |
| soft_ai_features=_p(10, "Apple Intelligence Writing Tools Image Playground on-device"), | |
| soft_ecosystem=_p(10, "Best Apple ecosystem Mac iPad Apple Watch AirPods"), | |
| audio_speakers=_p(10, "Spatial Audio best stereo separation of any phone"), | |
| audio_headphone_jack=_p(0, "No 3.5mm USB-C era"), | |
| audio_bt_codecs=_p(6, "AAC only Apple limitation no LDAC"), | |
| ), | |
| ), | |
| ] | |