इस प्रोजेक्ट के बारे में

Expo Device Hub एक Expo DevTools प्लगइन है जो iOS सिमुलेटर और Android एमुलेटर के लिए एक ही नियंत्रण सतह प्रदान करता है, जिससे डेवलपर्स अपने वर्कफ़्लो को छोड़े बिना ब्राउज़र से डिवाइस का पूर्वावलोकन और इंटरैक्शन कर सकते हैं। `expo start` चलाने पर, यह एक डिवाइस डैशबोर्ड रजिस्टर करता है जो किसी भी डिवाइस की लाइव स्ट्रीम दिखाता है और सीधे इंटरैक्शन की अनुमति देता है। मुख्य क्षमताएँ: - ब्राउज़र में iOS सिमुलेटर और Android एमुलेटर की लाइव स्ट्रीमिंग। - सीधा इंटरैक्शन: डिवाइस पर टैप, स्वाइप, स्क्रॉल और टाइप करें। - Xcode या Android Studio खोले बिना डिवाइस बूट, शट डाउन और जोड़ें। - सिस्टम लाइट/डार्क थीम का पालन करता है और डिवाइस की अपीयरेंस टॉगल कर सकता है। - इंस्पेक्टर के Camera सेक्शन से Android एमुलेटर के कैमरे को PNG फ़ीड करें। आवश्यकताएँ: iOS सिमुलेटर के लिए macOS के साथ Xcode चाहिए; Android एमुलेटर के लिए Android SDK (emulator, adb) चाहिए। Expo ऐप के अंदर Hub का उपयोग करने के लिए Expo SDK 57 या नया चाहिए। उपयोग: `npx expo install expo-device-hub` से इंस्टॉल करें, फिर `npx expo start` चलाएँ। टर्मिनल में एक लिंक दिखाई देता है। इसे `npx expo-device-hub` के ज़रिए स्टैंडअलोन भी चलाया जा सकता है। रिपॉज़िटरी एक Bun वर्कस्पेस है जिसे Turborepo से ऑर्केस्ट्रेट किया गया है। पैकेजों में मुख्य DevTools प्लगइन, एक device-client लेयर (@expo/hub-client) जो serve-sim (MJPEG/H.264, बाइनरी टच पैकेट) और serve-emu (WebCodecs के ज़रिए H.264, JSON जेस्चर) के अलग-अलग वायर प्रोटोकॉल को एकीकृत करती है, Expo styleguide टोकन पर बना एक dependency-free UI किट, Apple और Android डिवाइस यूटिलिटीज़, और vendored serve-sim/serve-emu सर्वर शामिल हैं। एक उदाहरण Expo ऐप प्लगइन को वैसे प्रदर्शित करता है जैसे अंतिम उपयोगकर्ता इसे देखेगा। डेवलपमेंट: Bun 1.3.14 के साथ डिपेंडेंसी इंस्टॉल करें और `bun run build` से सभी पैकेज बनाएँ। उदाहरण ऐप `bun start` से शुरू किया जा सकता है। UI पुनरावृत्ति के लिए, प्लगइन को Metro fast refresh के साथ स्टैंडअलोन Expo वेब ऐप के रूप में चलाया जा सकता है; डिवाइस सर्वर बंडल है, इसलिए src/server के अंतर्गत बदलावों के लिए `bun run build:server` आवश्यक है।