इस प्रोजेक्ट के बारे में
# AT प्रोटोकॉल संदर्भ कार्यान्वयन (TypeScript)
इस रिपॉजिटरी में AT प्रोटोकॉल (atproto) का ब्लूस्काई का संदर्भ कार्यान्वयन शामिल है, जो एक विकेंद्रीकृत सोशल मीडिया प्रोटोकॉल है, और `app.bsky` माइक्रोब्लॉगिंग एप्लिकेशन सेवा बैकएंड है। इसे इस तरह डिज़ाइन किया गया है कि तृतीय-पक्ष सॉफ़्टवेयर प्रथम-पक्ष के समान ही सहज हो: कस्टम फ़ीड, संघीय सेवाएँ, और वैकल्पिक क्लाइंट सभी समान APIs के विरुद्ध निर्माण करते हैं।
## अंदर क्या है
### लेक्सिकॉन
`com.atproto.*` और `app.bsky.*` दोनों नामस्थानों के लिए विहित स्कीमा परिभाषाएँ, लेक्सिकॉन स्कीमा परिभाषा भाषा में JSON फ़ाइलों के रूप में संग्रहीत (JSON Schema या OpenAPI के समान)।
### TypeScript पैकेज
npm पर `@atproto/*` स्कोप के अंतर्गत प्रकाशित (आंतरिक उपयोगिताओं के साथ `@atproto-labs/*` के अंतर्गत)। मुख्य पैकेजों में शामिल हैं:
- **`@atproto/lex`** – टाइप-सुरक्षित SDK जो लेक्सिकॉन स्कीमा से TypeScript उत्पन्न करता है और एक HTTP (XRPC) क्लाइंट प्रदान करता है। ऐप्स या बॉट बनाने के लिए अनुशंसित। पुराना `@atproto/api` क्लाइंट अभी भी मौजूद है, लेकिन नए कोड को `@atproto/lex` को प्राथमिकता देनी चाहिए।
- **OAuth पैकेज** (`./packages/oauth/`) – "ब्लूस्काई के साथ साइन इन करें" के लिए क्लाइंट और सर्वर कार्यान्वयन, ब्राउज़र, Node, और Expo रनटाइम के लिए वेरिएंट के साथ।
- **प्रोटोकॉल प्राइमिटिव्स** – पहचानकर्ता पार्सिंग (`syntax`), DID/हैंडल रिज़ॉल्यूशन (`identity`, `did`), हस्ताक्षर (`crypto`), रिपॉजिटरी और मर्कल सर्च ट्री (`repo`), और फायरहोज़ खपत (`sync`) के लिए केंद्रित पैकेज।
- **साझा उपयोगिताएँ** – `common`, `common-web`, और `./packages/internal/` में आंतरिक गोंद कोड।
### TypeScript सेवाएँ
प्रत्येक सेवा का कार्यान्वयन `packages/<name>` में और एक पतला रनटाइम रैपर `services/<name>` में है:
- **`pds`** – व्यक्तिगत डेटा सर्वर, atproto खातों के लिए रिपॉजिटरी सामग्री होस्ट करना। सेल्फ-होस्टिंग निर्देश [bluesky-social/pds](https://github.com/bluesky-social/pds) पर उपलब्ध हैं।
- **`bsky`** – `app.bsky.*` API एंडपॉइंट्स का AppView कार्यान्वयन, मुख्य नेटवर्क पर `api.bsky.app` पर चल रहा है।
- **`bsync`** – AppView द्वारा उपयोग की जाने वाली आंतरिक सिंक्रनाइज़ेशन सेवा, जैसे म्यूट और सूचनाएँ जैसी क्रॉस-सेवा स्थिति के लिए।
- **`ozone`** – `tools.ozone.*` API को लागू करने वाली मॉडरेशन सेवा।
## यहाँ क्या नहीं है
ब्लूस्काई सोशल क्लाइंट ऐप (वेब और मोबाइल) का स्रोत कोड [bluesky-social/social-app](https://github.com/bluesky-social/social-app) पर है। Go भाषा का स्रोत कोड, जिसमें BGS कार्यान्वयन शामिल है, [bluesky-social/indigo](https://github.com/bluesky-social/indigo) पर है।
## आरंभ करना
- **अवलोकन और गाइड**: [atproto.com/guides/overview](https://atproto.com/guides/overview)
- **प्रश्न**: [GitHub चर्चाएँ](https://github.com/bluesky-social/atproto/discussions)
- **प्रोटोकॉल विनिर्देश**: [atproto.com/specs/atp](https://atproto.com/specs/atp)
## योगदान
योगदान का स्वागत है, लेकिन उच्च-गुणवत्ता वाले मुद्दों और पुल अनुरोधों को प्राथमिकता दी जाती है। डेवलपर क्विकस्टार्ट, नियम और दिशानिर्देशों के लिए [CONTRIBUTING.md](./CONTRIBUTING.md) देखें, जिसमें LLM-सहायता प्राप्त योगदान पर नीति शामिल है। कोड सम्मेलन [STYLE_GUIDE.md](./STYLE_GUIDE.md) में हैं।
## सुरक्षा
सुरक्षा मुद्दों की रिपोर्ट security@bsky.app पर करें (टीम को स्वचालित रूप से CC किया जाता है)। अधिक जानकारी के लिए [SECURITY.md](https://github.com/bluesky-social/atproto/blob/main/SECURITY.md) देखें।
## लाइसेंस
MIT और Apache 2.0 के तहत दोहरी-लाइसेंस प्राप्त। डाउनस्ट्रीम परियोजनाएँ व्यक्तिगत रूप से या दोनों एक साथ कोई भी लाइसेंस चुन सकती हैं। ब्लूस्काई सोशल PBC ने सॉफ़्टवेयर पेटेंट गैर-आक्रामकता प्रतिज्ञा के लिए प्रतिबद्धता जताई है (घोषणा देखें [announcement](https://bsky.social/about/blog/10-01-2025-patent-pledge))।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.