דמיינו אפליקציה שבה המשתמש מחובר. כמעט כל component צריך לדעת מי המשתמש: ה-Header מציג את השם, ה-Sidebar מציג avatar, ה-Dashboard מציג dashboard מותאם, כל API call כולל JWT token. ה-naive approach: להעביר user prop מ-App → Layout → Header → Navigation → UserMenu. זה prop drilling, ולדעת שכל מה שבאמצע לא באמת צריך את ה-prop הזה, הוא רק מעביר אותו הלאה - זה ריח רע בקוד.
Context API הוא הפתרון המובנה של React לבעיה הזו. חשוב להבין: Context הוא לא state management library. הוא מנגנון לsharing values בלי prop drilling. ה-state עצמו נשמר ב-useState כרגיל - Context רק מספק דרך לגשת אליו בלי להעביר props.
הבחנה זו חשובה: Context לא מספק caching, לא מספק selective subscriptions, ולא מספק devtools. הוא channel תקשורת - nothing more. כשנדרש יותר מ"channel", מגיעים לZustand או Redux.