PlainApp ब्लॉग

इंजीनियरिंग नोट्स

PlainApp की पीयर-टू-पीयर आर्किटेक्चर, ट्रांसपोर्ट डिज़ाइन और क्रिप्टोग्राफ़ी का गहन विश्लेषण — सीधे सोर्स कोड से।

Transport16 min read

DLNA कास्ट: स्क्रैच से UPnP सेंडर और रिसीवर बनाना

PlainApp कैसे DLNA/UPnP AV कास्टिंग को दोनों दिशाओं में लागू करता है: सेंडर के रूप में SOAP के ज़रिए TV को स्कैन और कंट्रोल करना, और रिसीवर के रूप में फ़ोन को ही UPnP MediaRenderer में बदलना — SSDP डिस्कवरी, DIDL-Lite मेटाडेटा, Range-request मीडिया सर्विंग, GENA इवेंट कॉलबैक, और सेंडर-IP अनुमति/अस्वीकार ट्रस्ट मॉडल, सब कुछ शुद्ध Kotlin Multiplatform में।

लेख पढ़ें
Architecture15 min read

स्क्रीन मिरर: कम-विलंबता कास्टिंग आर्किटेक्चर

यह लेख PlainApp के स्क्रीन मिरर सिस्टम के एंड-टू-एंड डिज़ाइन को कवर करता है: Android कैसे MediaCodec के माध्यम से H.264/Opus को हार्डवेयर-एनकोड करता है, फ्रेम्स कस्टम बाइनरी प्रोटोकॉल का उपयोग करके WebSocket पर कैसे यात्रा करते हैं, वेब साइड WebCodecs के माध्यम से कैसे डीकोड करता है और WebGL2 के माध्यम से जीरो CPU कॉपी के साथ रेंडर करता है, और लॉस डिटेक्शन, ओरिएंटेशन चेंज और रिमोट टच कंट्रोल को कैसे हैंडल किया जाता है।

लेख पढ़ें
Security12 min read

PlainApp सुरक्षा: गहन विश्लेषण

स्थानीय Wi-Fi पर PlainApp आपके डेटा की रक्षा कैसे करता है — ओपन-सोर्स कोड से साक्ष्य के साथ।

लेख पढ़ें
Transport19 min read

Wi-Fi Aware ट्रांसपोर्ट डिज़ाइन — पड़ोसी डिस्कवरी और डेटा पथ

यह लेख बताता है कि PlainApp Wi-Fi Aware (NAN — Neighbor Awareness Networking) का उपयोग अपनी पीयर ट्रांसपोर्ट फ़ॉलबैक श्रृंखला के मध्य स्तर के रूप में कैसे करता है, LAN (समान-सबनेट HTTPS) और BLE (अंतिम-उपाय GATT RPC) के बीच। Wi-Fi Aware वही है जो दो PlainApp डिवाइस को तब बात करने देता है जब वे अलग SSID पर, गेस्ट बनाम IoT VLAN पर, या बिना किसी Wi-Fi इंफ़्रास्ट्रक्चर के हों — बिना कभी किसी DHCP सर्वर से IP पते की ज़रूरत के।

लेख पढ़ें
Transport15 min read

BLE ट्रांसपोर्ट डिज़ाइन — संदेश और फ़ाइल डाउनलोड

यह लेख बताता है कि PlainApp चैट संदेशों को कैसे पुश करता है और फ़ाइलों को Bluetooth Low Energy पर कैसे डाउनलोड करता है जब न तो LAN और न ही Wi-Fi Aware उपलब्ध हो। BLE गारंटीड फ़ॉलबैक है: धीमा, लेकिन बिना किसी IP कनेक्टिविटी के काम करता है। यह लेख वायर फ़ॉर्मैट, दो-परत चंकिंग डिज़ाइन, समवर्ती ट्रैफ़िक को प्राथमिकता कैसे दी जाती है (और कैसे नहीं), और हर अनुरोध के बाद हर कनेक्शन क्यों तोड़ दिया जाता है, कवर करता है।

लेख पढ़ें
Architecture12 min read

पीयर और चैनल चैट आर्किटेक्चर

यह लेख बताता है कि PlainApp का ऑफ़लाइन-फ़र्स्ट चैट अंत-से-अंत कैसे काम करता है: एक संदेश UI में एक टैप से कैसे पीयर ट्रांसपोर्ट पर दूसरे डिवाइस तक यात्रा करता है, समूह चैनल संदेशों को कई सदस्यों तक कैसे फैलाते हैं, और जब नेटवर्क गायब हो जाते हैं तब सिस्टम कैसे लचीला बना रहता है। पेयरिंग (विश्वास और की एक्सचेंज जो दो डिवाइस को बूटस्ट्रैप करती है) अलग Pairing Flow लेख में कवर की गई है।

लेख पढ़ें
Security10 min read

पेयरिंग प्रवाह

यह लेख बताता है कि दो PlainApp डिवाइस पहली बार आपस में विश्वास कैसे स्थापित करते हैं — वे एक-दूसरे को कैसे खोजते हैं, कुंजी का आदान-प्रदान कैसे करते हैं, और उस साझा ChaCha20 ट्रांसपोर्ट कुंजी तक कैसे पहुँचते हैं जिससे बाद में हर चैट संदेश, फ़ाइल स्थानांतरण और प्रेज़ेंस पिंग कूटलेखित (encrypted) होते हैं। इस कुंजी का उपयोग करने वाली चैट और चैनल आर्किटेक्चर अलग Chat Architecture लेख में कवर की गई है।

लेख पढ़ें