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

# Psst Psst एक उच्च-प्रदर्शन, बहु-प्लेटफ़ॉर्म Spotify क्लाइंट है जिसमें एक नेटिव ग्राफ़िकल यूज़र इंटरफ़ेस (GUI) है। पूरी तरह से Rust में लिखा गया, यह Electron-आधारित अनुप्रयोगों के ओवरहेड से बचता है, जो एक हल्का और उत्तरदायी अनुभव प्रदान करता है। सॉफ़्टवेयर पूरी तरह से क्रॉस-प्लेटफ़ॉर्म है, जो Windows, Linux और macOS का समर्थन करता है। ## मुख्य विशेषताएँ - **नेटिव प्रदर्शन**: गति और दक्षता के लिए Rust के साथ निर्मित, नेटिव रूप और अनुभव के लिए Druid UI लाइब्रेरी का उपयोग करता है। - **मुख्य कार्यक्षमता**: Vorbis ट्रैक प्लेबैक, सहेजे गए एल्बम और ट्रैक ब्राउज़ करना, अनुसरण किए गए प्लेलिस्ट, और "आपके लिए" सामग्री सहित शैली प्लेलिस्ट का समर्थन करता है। - **खोज और खोज**: ऐप के भीतर सीधे कलाकारों, एल्बमों और ट्रैक्स की खोज करने की अनुमति देता है। - **पॉडकास्ट समर्थन**: पॉडकास्ट ब्राउज़ करने और सुनने की कार्यक्षमता शामिल है। - **प्लेबैक नियंत्रण**: मीडिया कुंजी नियंत्रण, ऑडियो वॉल्यूम समायोजन, और ऑडियो लाउडनेस सामान्यीकरण की सुविधाएँ शामिल हैं। - **थीमिंग**: एक डार्क थीम विकल्प शामिल है। - **गोपनीयता**: केवल आधिकारिक Spotify सर्वर से कनेक्ट होता है; होम कॉल नहीं करता। उपयोगकर्ता क्रेडेंशियल स्थानीय रूप से संग्रहीत नहीं होते; इसके बजाय, Spotify से पुन: प्रयोज्य प्रमाणीकरण टोकन का उपयोग किया जाता है। कैश स्थानीय रूप से संग्रहीत होते हैं और किसी भी समय हटाए जा सकते हैं। ## आवश्यकताएँ - एप्लिकेशन का उपयोग करने के लिए एक **Spotify Premium** खाता आवश्यक है। - फरवरी 2026 तक, Spotify के डेवलपर एक्सेस नीतियों में बदलाव के कारण, Psst को Web API सुविधाओं (जैसे खोज, लाइब्रेरी एक्सेस, और प्लेलिस्ट) के लिए उपयोगकर्ताओं को अपना स्वयं का Spotify डेवलपर क्लाइंट ID पंजीकृत करना आवश्यक है। उपयोगकर्ताओं को Spotify डेवलपर डैशबोर्ड पर एक ऐप पंजीकृत करना होगा और Psst की साइन-इन स्क्रीन में क्लाइंट ID दर्ज करनी होगी। ## प्लेटफ़ॉर्म समर्थन - **Windows**: निष्पादन योग्य डाउनलोड के माध्यम से उपलब्ध। - **macOS**: DMG इंस्टॉलर के माध्यम से उपलब्ध। - **Linux**: x86_64 और aarch64 आर्किटेक्चर के लिए उपलब्ध, जिसमें Debian पैकेज (.deb) शामिल हैं। - **OpenBSD**: कार्य प्रगति पर है; समर्थन अस्थिर हो सकता है। अनौपचारिक बिल्ड Arch User Repository (AUR) और Homebrew के माध्यम से भी उपलब्ध हैं। ## स्थापना पूर्व-निर्मित बाइनरी [GitHub Releases पृष्ठ](https://github.com/jpochyla/psst/releases/latest) से डाउनलोड की जा सकती हैं। ### स्रोत से निर्माण Psst को स्रोत से बनाने के लिए, आपको Rust का नवीनतम स्थिर संस्करण (कम से कम 1.65.0) चाहिए। #### Linux निर्भरताएँ - **Debian/Ubuntu**: `sudo apt-get install libssl-dev libgtk-3-dev libcairo2-dev libasound2-dev` - **RHEL/Fedora**: `sudo dnf install openssl-devel gtk3-devel cairo-devel alsa-lib-devel` #### निर्माण कमांड ```shell cargo build # रिलीज़ बिल्ड के लिए --release जोड़ें। ``` GUI चलाने के लिए: ```shell cargo run --bin psst-gui ``` एक इंस्टॉलेशन बंडल (जैसे, macOS .app) बनाने के लिए: ```shell cargo install cargo-bundle cargo bundle --release ``` ## परियोजना संरचना - `/psst-core`: कोर लाइब्रेरी जो Spotify TCP सत्र, ऑडियो पुनर्प्राप्ति, डिकोडिंग, आउटपुट, और प्लेबैक कतार को संभालती है। - `/psst-gui`: Druid के साथ निर्मित GUI एप्लिकेशन। - `/psst-cli`: ट्रैक चलाने के लिए एक उदाहरण CLI उपकरण। ## रोडमैप वर्तमान विकास स्थिरता में सुधार और लापता सुविधाओं को जोड़ने पर केंद्रित है जैसे प्लेलिस्ट प्रबंधन (फ़ॉलो/अनफ़ॉलो, ट्रैक जोड़ें/हटाएं), बेहतर कैशिंग तंत्र, नेटवर्क त्रुटियों के प्रति लचीलापन, और OS-विशिष्ट एप्लिकेशन बंडल। भविष्य के UI सुधारों में दो-पैनल लेआउट, हल्के/गहरे OS थीम का पता लगाना, और बड़ी लाइब्रेरी के साथ बेहतर प्रदर्शन के लिए वर्चुअलाइज्ड सूचियाँ शामिल हैं। ## योगदान योगदान का स्वागत है। परियोजना सुविधाओं को बढ़ाने और बग्स को ठीक करने के लिए समुदाय के प्रयासों पर निर्भर करती है। कोडबेस संरचना और योगदान दिशानिर्देशों के अधिक विवरण के लिए, रिपॉजिटरी के विकास अनुभाग देखें।