مرحباً بالأصدقاء!
يحتوي هذا المستودع على تطبيق Bluesky المرجعي لبروتوكول AT والواجهة الخلفية لخدمة تطبيق المدونات الصغيرة app.bsky
.
حزم تايب سكريبت:
طَرد | المستندات | الآلية الوقائية الوطنية |
---|---|---|
@atproto/api : مكتبة العميل | التمهيدي | |
@atproto/common-web : التعليمات البرمجية المشتركة والمساعدين الذين يمكن تشغيلهم في متصفحات الويب | التمهيدي | |
@atproto/common : التعليمات البرمجية المشتركة والمساعدين الذين لا يعملون في متصفحات الويب | التمهيدي | |
@atproto/crypto : توقيع التشفير وتسلسل المفاتيح | التمهيدي | |
@atproto/identity : DID والتعامل مع الدقة | التمهيدي | |
@atproto/lexicon : لغة تعريف المخطط | التمهيدي | |
@atproto/repo : بنية تخزين البيانات، بما في ذلك MST | التمهيدي | |
@atproto/syntax : محللو السلسلة للمعرفات | التمهيدي | |
@atproto/xrpc : مساعدو HTTP API من جانب العميل | التمهيدي | |
@atproto/xrpc-server : مساعدو HTTP API من جانب الخادم | التمهيدي |
خدمات تايب سكريبت:
pds
: "خادم البيانات الشخصية"، الذي يستضيف محتوى الريبو لحسابات atproto. معظم تعليمات التنفيذ البرمجية موجودة في packages/pds
، مع غلاف وقت التشغيل في services/pds
. راجع bluesky-social/pds للحصول على توجيهات بشأن الاستضافة الذاتية.bsky
: تطبيق AppView لنقاط نهاية app.bsky.*
API. يعمل على الشبكة الرئيسية في api.bsky.app
. معظم تعليمات التنفيذ موجودة في packages/bsky
، مع غلاف وقت التشغيل في services/bsky
. المعاجم: لكل من com.atproto.*
و app.bsky.*
تم إصدارهما بشكل قانوني في هذا الريبو، في الوقت الحالي، ضمن ./lexicons/
. هذه هي ملفات JSON في لغة تعريف مخطط المعجم، تشبه JSON Schema أو OpenAPI.
بيانات اختبار قابلية التشغيل البيني: قد تكون ملفات الاختبار المحايدة للغة في ./interop-test-files/
مفيدة لتطبيقات البروتوكول الأخرى للتأكد من أنها تتبع المواصفات بشكل صحيح
يمكن العثور على الكود المصدري لتطبيق عميل Bluesky Social (للويب والجوال) على bluesky-social/social-app.
الكود المصدري للغة البرمجة Go موجود باللغة bluesky-social/indigo، بما في ذلك تطبيق BGS.
نوصي باستخدام nvm
لإدارة عمليات تثبيت Node.js. يتطلب هذا المشروع الإصدار 18 من Node.js. ويتم استخدام pnpm
لإدارة مساحة عمل الحزم المتعددة. يمكنك تثبيته باستخدام npm install --global pnpm
.
يوجد ملف Makefile يمكنه المساعدة في مهام التطوير الأساسية:
# use existing nvm to install node 18 and pnpm
make nvm-setup
# pull dependencies and build all local packages
make deps
make build
# run the tests, using Docker services as needed
make test
# run a local PDS and AppView with fake test accounts and data
# (this requires a global installation of `jq` and `docker`)
make run-dev-env
# show all other commands
make help
بروتوكول النقل المصادق ("ATP" أو "atproto") هو بروتوكول وسائط اجتماعية لا مركزي، تم تطويره بواسطة Bluesky PBC. تعرف على المزيد على:
يشتمل تطبيق Bluesky Social على مجموعة من المخططات وواجهات برمجة التطبيقات المضمنة في إطار بروتوكول AT الشامل. مساحة الاسم لهذه "المعجمات" هي app.bsky.*
.
على الرغم من أننا نقبل المساهمات، إلا أننا نعطي الأولوية لقضايا الجودة العالية ونسحب الطلبات. إن الالتزام بالإرشادات التالية سيضمن إجراء المراجعة في الوقت المناسب.
قواعد:
المبادئ التوجيهية:
تذكر أننا نخدم مجتمعًا واسعًا من المستخدمين. يتضمن عملنا اليومي أن نسأل باستمرار "ما هي الأولوية القصوى التي تمثل أولويتنا القصوى". إذا قمت بتقديم تقارير علاقات عامة مكتوبة بشكل جيد والتي تحل المشكلات بإيجاز، فهذه مساهمة رائعة. بخلاف ذلك، بقدر ما نرغب في قبول أفكارك ومساهماتك، إلا أننا لا نملك النطاق الترددي.
Bluesky عبارة عن شبكة اجتماعية مفتوحة مبنية على بروتوكول AT، وهي تقنية مرنة لن تمنع المطورين أبدًا من الوصول إلى الأنظمة البيئية التي يساعدون في بنائها. مع atproto، يمكن للطرف الثالث أن يكون سلسًا مثل الطرف الأول من خلال الخلاصات المخصصة والخدمات الموحدة والعملاء والمزيد.
إذا اكتشفت أي مشاكل أمنية، يرجى إرسال بريد إلكتروني إلى [email protected]. يتم إرسال نسخة من البريد الإلكتروني تلقائيًا إلى الفريق بأكمله، وسنقوم بالرد على الفور. راجع SECURITY.md لمزيد من المعلومات.
هذا المشروع مرخص بشكل مزدوج بموجب شروط MIT وApache 2.0:
يجوز للمشاريع النهائية والمستخدمين النهائيين اختيار الترخيص بشكل فردي، أو كليهما معًا، وفقًا لتقديرهم. الدافع وراء هذا الترخيص المزدوج هو ضمان براءة اختراع البرنامج الإضافي الذي يوفره Apache 2.0.