Mastodon هو خادم شبكة اجتماعية مجاني ومفتوح المصدر يعتمد على ActivityPub حيث يمكن للمستخدمين متابعة الأصدقاء واكتشاف أصدقاء جدد. في Mastodon، يمكن للمستخدمين نشر أي شيء يريدونه: الروابط والصور والنصوص والفيديو. جميع خوادم Mastodon قابلة للتشغيل البيني كشبكة موحدة (يمكن للمستخدمين على خادم واحد التواصل بسلاسة مع المستخدمين من خادم آخر، بما في ذلك البرامج غير التابعة لـ Mastodon التي تنفذ ActivityPub!)
انقر أدناه لمعرفة المزيد في الفيديو:
الصفحة الرئيسية للمشروع ؟
دعم التطوير عبر Patreon
عرض الرعاة
مدونة
التوثيق
خريطة الطريق
صورة دوكر الرسمية
تصفح خوادم Mastodon
تصفح تطبيقات Mastodon
ليس من الضروري أن يكون مستودون؛ كل ما ينفذ ActivityPub هو جزء من الشبكة الاجتماعية! يتعلم أكثر
تظهر تحديثات الأشخاص الذين تتابعهم في الوقت الفعلي في واجهة المستخدم عبر WebSockets. هناك إطلالة على خرطوم الإطفاء أيضًا!
قم بتحميل وعرض الصور ومقاطع الفيديو WebM/MP4 المرفقة بالتحديثات. يتم التعامل مع مقاطع الفيديو التي لا تحتوي على مسار صوتي مثل ملفات GIF؛ مقاطع الفيديو العادية تتكرر بشكل مستمر!
يتضمن Mastodon منشورات خاصة، وحسابات مقفلة، وتصفية العبارات، وكتم الصوت، والحظر، وجميع أنواع الميزات الأخرى، إلى جانب نظام إعداد التقارير والإشراف. يتعلم أكثر
يعمل Mastodon كموفر OAuth2، لذلك يمكن لتطبيقات الطرف الثالث استخدام REST وواجهات برمجة تطبيقات البث. يؤدي هذا إلى نظام بيئي غني للتطبيقات مع الكثير من الخيارات!
تعمل Ruby on Rails على تشغيل REST API وصفحات الويب الأخرى
يتم استخدام React.js و Redux للأجزاء الديناميكية من الواجهة
يقوم Node.js بتشغيل واجهة برمجة التطبيقات المتدفقة
بوستجري إس كيو إل 12+
ريديس 4+
روبي 3.2+
نود.جي إس 18+
يتضمن المستودع تكوينات النشر لـ Docker وdocker-compose بالإضافة إلى منصات محددة مثل Heroku و Scalingo . بالنسبة لمخططات Helm، قم بالرجوع إلى مستودع الماستودون/المخططات. يتوفر دليل التثبيت المستقل في الوثائق.
تم تضمين تكوين Vagrant لأغراض التطوير. لاستخدامه، أكمل الخطوات التالية:
قم بتثبيت Vagrant و Virtualbox
تثبيت البرنامج المساعد vagrant-hostsupdater
: vagrant plugin install vagrant-hostsupdater
اركض vagrant up
قم بتشغيل vagrant ssh -c "cd /vagrant && bin/dev"
افتح http://mastodon.local
في متصفحك
لإعداد macOS للتطوير الأصلي، أكمل الخطوات التالية:
قم بتثبيت Homebrew وتشغيل brew install postgresql@14 redis imagemagick libidn nvm
لتثبيت تبعيات المشروع المطلوبة
استخدم مدير إصدار Ruby لتنشيط Ruby في .ruby-version
وقم بتشغيل nvm use
لتنشيط إصدار العقدة من .nvmrc
قم بتشغيل البرنامج النصي bin/setup
، الذي سيقوم بتثبيت جواهر الياقوت وحزم العقد المطلوبة وإعداد قاعدة البيانات للتطوير المحلي
أخيرًا، قم بتشغيل البرنامج النصي bin/dev
الذي سيطلق الخدمات عبر overmind
(إذا كان مثبتًا) أو foreman
لاستضافة الإنتاج ونشره باستخدام Docker ، استخدم Dockerfile
و docker-compose.yml
في الدليل الجذر للمشروع.
للتطوير المحلي، قم بتثبيت Docker وتشغيله:
docker compose -f .devcontainer/compose.yaml up -d docker compose -f .devcontainer/compose.yaml exec app bin/setup docker compose -f .devcontainer/compose.yaml exec app bin/dev
ضمن بيئة تطوير متكاملة (IDEs) تدعم مواصفات حاويات التطوير، ابدأ تشغيل حاوية "Mastodon على الجهاز المحلي" من المحرر. يجب أن تعمل أوامر docker compose
اللازمة لإنشاء الحاوية وإعدادها تلقائيًا. بالنسبة لـ Visual Studio Code، يتطلب هذا تثبيت ملحق Dev Container.
يوفر GitHub Codespaces إصدارًا مستندًا إلى الويب من VS Code وبيئة تطوير مستضافة على السحابة تم تكوينها باستخدام البرنامج اللازم لهذا المشروع.
انقر فوق الزر لإنشاء مساحة تعليمات برمجية جديدة، وقم بتأكيد الخيارات
انتظر حتى يتم بناء البيئة (يستغرق بضع دقائق)
عندما يصبح المحرر جاهزًا، قم بتشغيل bin/dev
في الوحدة الطرفية
انتظر فتح في المتصفح . سيؤدي هذا إلى فتح Mastodon
في علامة التبويب " المنافذ "، قم بتغيير إعداد "رؤية المنفذ" → "عام".
Mastodon هو برنامج مجاني مفتوح المصدر مرخص بموجب AGPLv3 .
يمكنك فتح مشكلات للأخطاء التي وجدتها أو الميزات التي تعتقد أنها مفقودة. يمكنك أيضًا إرسال طلبات السحب إلى هذا المستودع أو إرسال الترجمات باستخدام Crowdin. للبدء، قم بإلقاء نظرة على CONTRIBUTING.md. إذا تم قبول مساهماتك في Mastodon، فيمكنك طلب الدفع من خلال OpenCollective الخاص بنا.
قناة IRC : #mastodon على irc.libera.chat
حقوق الطبع والنشر (C) 2016-2024 يوجين روشكو وغيره من المساهمين في Mastodon (انظر AUTHORS.md)
هذا البرنامج هو برنامج مجاني: يمكنك إعادة توزيعه و/أو تعديله بموجب شروط رخصة GNU Affero العامة كما نشرتها مؤسسة البرمجيات الحرة، إما الإصدار 3 من الترخيص، أو (حسب اختيارك) أي إصدار لاحق.
يتم توزيع هذا البرنامج على أمل أن يكون مفيدًا، ولكن دون أي ضمان؛ دون حتى الضمان الضمني لقابلية التسويق أو الملاءمة لغرض معين. راجع رخصة جنو أفيرو العامة لمزيد من التفاصيل.
ينبغي أن تكون قد استلمت نسخة من رخصة GNU Affero العامة مع هذا البرنامج. إذا لم يكن الأمر كذلك، راجع https://www.gnu.org/licenses/.