13 नवंबर 2026
React अंदर, Rust बाहर
डिज़ाइनर React के साथ बने रहते हैं। डिवाइस को नेटिव Rust मिलता है। Screen Compiler बिल्ड के समय स्क्रीन को कोड में कैसे बदलता है, ताकि डिवाइस पर हमला करने के लिए कोई ब्राउज़र ही न हो।
इस पेज पर
आधुनिक इंटरफ़ेस React में डिज़ाइन होते हैं। इसलिए बहुत सारे डेडिकेटेड डिवाइस, कंट्रोल पैनल से लेकर टिकट मशीन तक, एक पूरा ब्राउज़र इंजन साथ लेकर चलते हैं, जो दुनिया के सबसे बड़े और सबसे ज़्यादा हमले झेलने वाले प्रोग्रामों में से एक है, बस कुछ बटन और “Touch Start to begin” शब्द दिखाने के लिए।
हमें आधुनिक डिज़ाइन का तरीक़ा चाहिए था, ब्राउज़र के बिना। इसलिए हमने Screen Compiler बनाया।
स्क्रीन React में लिखिए
आपके डिज़ाइनर और फ़्रंट-एंड डेवलपर अपने औज़ार रखते हैं: कंपोनेंट, प्रॉप्स, डिज़ाइन टोकन, अपना एडिटर। वे स्क्रीन TSX में लिखते हैं (यह Screen Compiler की एक टेस्ट स्क्रीन का छोटा किया हुआ रूप है):
<Column gap={SPACE_SM} padding={SPACE_LG}>
<Text id="title">Welcome</Text>
<Text>Touch Start to begin.</Text>
<Spacer />
<Button id="start" onPress={onStart}>Start</Button>
</Column>
सीधा-सादा Rust भेजिए
बिल्ड के समय, आपकी मशीन पर या CI में, Screen Compiler इसे NoWayOS के यूज़र इंटरफ़ेस रनटाइम के लिए Rust में बदल देता है:
let n1 = b.text("Welcome")?; // welcome.tsx:17:9 <Text>
let n2 = b.text("Touch Start to begin.")?; // welcome.tsx:18:9 <Text>
let n4 = b.spacer(None)?; // welcome.tsx:20:9 <Spacer>
let n5 = b.button("Start", actions::START)?; // welcome.tsx:21:9 <Button>
हर लाइन उस TSX की ओर इशारा करती है जिससे वह बनी है। डिवाइस को यही कोड मिलता है और कुछ नहीं: न JavaScript इंजन, न ब्राउज़र, न हमला करने लायक़ कोई वेब पेज। Screen Compiler ख़ुद कभी डिवाइस पर नहीं जाता।
React अंदर, Rust बाहर
ब्राउज़र बिल्ड पर ही पीछे रह जाता है।
बिल्ड के समय
TSX में स्क्रीनReact, जैसा डिज़ाइनर लिखते हैं
Screen Compilerबिल्कुल सटीक, या कुछ नहीं
सीधा-सादा Rustअपनी TSX लाइन से जुड़ा हुआ
सबसेट के बाहर: अस्वीकार, फ़ाइल, लाइन और कॉलम के साथ
डिवाइस पर
NoWayOS का UI रनटाइमन ब्राउज़र। न JavaScript।
बिल्कुल सटीक, या कुछ नहीं
जो कन्वर्टर अंदाज़ा लगाता है, उस पर भरोसा नहीं किया जा सकता। Screen Compiler TSX के अपने घोषित सबसेट को बिल्कुल सटीक बदलता है, और बाक़ी हर चीज़ को फ़ाइल, लाइन और कॉलम बताकर अस्वीकार कर देता है। वह कभी मोटा-मोटा अनुमान नहीं लगाता। जो Rust वह लिखता है, उसमें न unsafe है, न unwrap, न panic।
फिर हर बदली हुई स्क्रीन NoWayOS के रेंडरर से बनाई जाती है और उसकी स्वीकृत इमेज से पिक्सेल-दर-पिक्सेल मिलाई जाती है। एक भी पिक्सेल हिले, तो बिल्ड बता देता है।
यह कहाँ खड़ा है
Screen Compiler विकास में है: उसका पहला सबसेट बन चुका है और अगला चल रहा है। यह MIT लाइसेंस के तहत ओपन सोर्स है, GitHub पर NoWayOS के साथ। अगर आपकी टीम React में डिज़ाइन करती है और ऐसे डिवाइस बनाती है जो मायने रखते हैं, तो हम आपसे सुनना चाहेंगे।