इस प्रोजेक्ट के बारे में
Slint एक ओपन-सोर्स डिक्लेरेटिव GUI टूलकिट है जो एम्बेडेड सिस्टम, डेस्कटॉप, मोबाइल प्लेटफॉर्म और WebAssembly के माध्यम से वेब के लिए नेटिव यूजर इंटरफेस बनाने के लिए है। UI एक बार `.slint` में लिखा जाता है, जो एक डिक्लेरेटिव मार्कअप भाषा है, और इसे Rust, C++, JavaScript या Python में लिखे गए बिजनेस लॉजिक से जोड़ा जाता है।
नाम के पीछे डिज़ाइन लक्ष्य: Scalable (रेस्पॉन्सिव डिज़ाइन, क्रॉस-प्लेटफॉर्म, मल्टी-लैंग्वेज), Lightweight (न्यूनतम मेमोरी और प्रोसेसिंग आवश्यकताएं), Intuitive (सुसंगत API और डिज़ाइनर-अनुकूल टूलिंग), और Native (मशीन कोड में कंपाइल किया गया, OS API, CPU/GPU कोर और पेरिफेरल्स तक पहुंच के साथ)।
मुख्य विशेषताएं:
- स्वतंत्र UI डिज़ाइन: डिक्लेरेटिव भाषा UI को बिजनेस लॉजिक से अलग करती है ताकि डिज़ाइनर और डेवलपर समानांतर रूप से काम कर सकें।
- टूलिंग: लाइव प्रीव्यू, एडिटर इंटीग्रेशन, एक LSP सर्वर, एक VS Code एक्सटेंशन, ऑटो-रीलोड के साथ slint-viewer टूल, ऑनलाइन SlintPad एडिटर, और एक Figma to Slint प्लगइन।
- स्थिर 1.x API, सावधानीपूर्वक विकास के साथ।
आर्किटेक्चर: `.slint` फाइलें लेक्सिंग, पार्सिंग, ऑप्टिमाइज़ेशन और कोड जनरेशन के माध्यम से पहले से कंपाइल की जाती हैं, जिसमें C++, Rust और अन्य टारगेट के लिए बैक-एंड्स के साथ-साथ डायनामिक भाषाओं के लिए एक इंटरप्रेटर होता है। रनटाइम इंजन कंपोनेंट, एलिमेंट, आइटम और प्रॉपर्टी को एक ही मेमोरी क्षेत्र में रखता है ताकि एलोकेशन कम हों। रेंडरिंग बैक-एंड्स और स्टाइल कंपाइल टाइम पर कॉन्फ़िगर करने योग्य हैं: femtovg (OpenGL ES 2.0), skia, और एक CPU-आधारित सॉफ्टवेयर रेंडरर; Qt इंस्टॉल होने पर एक Qt स्टाइल उपलब्ध हो जाता है।
रिपॉजिटरी में प्रलेखित लैंग्वेज बाइंडिंग्स में C++, Rust, JavaScript/NodeJS (Beta), और Python (Beta) शामिल हैं, प्रत्येक में डॉक्यूमेंटेशन और गेटिंग-स्टार्टेड टेम्पलेट्स हैं। उदाहरण और डेमो एम्बेडेड टारगेट (Raspberry Pi, STM32, RP2040), डेस्कटॉप (Windows, macOS, Linux), और वेब डेमो जैसे प्रिंटर डेमो, स्लाइड पज़ल, एनर्जी मॉनिटर, विजेट गैलरी और वेदर डेमो को कवर करते हैं।
लाइसेंसिंग प्रोप्राइटरी डेस्कटॉप/मोबाइल/वेब एप्लिकेशन के लिए रॉयल्टी-फ्री लाइसेंस, ओपन-सोर्स एप्लिकेशन के लिए GNU GPLv3, और प्रोप्राइटरी एम्बेडेड/डेस्कटॉप/मोबाइल/वेब एप्लिकेशन के लिए एक कमर्शियल लाइसेंस के बीच विकल्प प्रदान करती है। यह प्रोजेक्ट SixtyFPS GmbH द्वारा मेंटेन किया जाता है और कोड, बग रिपोर्ट और फीडबैक का स्वागत करता है।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.