عن المشروع

Nakama خادم خلفي مفتوح المصدر مصمم للألعاب والتطبيقات الاجتماعية والزمنية الفعلية. وفقًا لملف README، يوفر مستخدمين مدمجين (التسجيل/الدخول عبر الشبكات الاجتماعية، البريد الإلكتروني، أو معرف الجهاز)، تخزين لسجلات المستخدمين والإعدادات، رسمًا اجتماعيًا مع الأصدقاء والمجموعات، دردشة فردية/جماعية/عالمية مع تاريخ محفوظ، ألعاب متعددة اللاعبين الزمنية الفعلية والبطيئة، جداول الترتيب، البطولات، الفعاليات، التحقق من الشراء، والإشعارات داخل التطبيق. يمكن توسيع الخادم باستخدام كود تشغيل مخصص مكتوب بلوا، أو TypeScript/JavaScript، أو جو الأصلية. كما يحتوي على مُسجّل مباريات، لوحة تحكم، قياسات، وغيرها من الميزات الموصوفة في الوثائق الرسمية. يقوم Nakama بالاتصال عبر gRPC أو REST HTTP/JSON كخيار احتياطي للطلبات والاستجابات، وعبر WebSockets أو rUDP للحركة الزمنية الفعلية. يتطلب قاعدة بيانات CockroachDB أو قاعدة بيانات أخرى متوافقة مع سلك Postgres. يمكن بدء التطوير المحلي بسرعة باستخدام Docker Compose، أو عبر تشغيل المExecutableات الأصلية. تتضمن إعداد المExecutableات تشغيل قاعدة البيانات، ثم تشغيل nakama migrate up --database.address ...، ثم تشغيل nakama --database.address .... يُصدر الخادم سجلات JSON تصف إعداداته. يتم دمج واجهة Nakama عبر الإنترنت في المExecutable الأحادي. يمكن استخدامه لفحص البيانات المخزنة عبر واجهات برمجة التطبيقات، وعرض القياسات، وإدارة بيانات اللاعبين، وتحديث الكائنات المخزنة، وتحديد الوصول بملفات تعريف الأذونات، ورؤية ميزات الزمن الفعلي مثل المباريات النشطة متعددة اللاعبين. تتوفر الواجهة على http://127.0.0.1:7351 افتراضيًا. توجد مكتبات عملاء رسمية لـ .NET (C#)، Unity، JavaScript، Java (مع Android)، Unreal، Godot، Defold، وSwift (مع iOS). يمكن نشر المشروع إلى مزودي سحابة مثل Google Cloud، Azure، AWS، Digital Ocean، Heroku، أو سحابة خاصة؛ ويُوصي ملف README بتشغيل عقد منفصلة لـ Nakama وCockroachDB. تُقدّم Heroic Cloud خيارًا للتشغيل المُدار. يمكن للمشاركين بناء المشروع من المصدر باستخدام Go. يحتوي المستودع على اعتمادات مدمجة ويدعم إنشاءات بسيطة باستخدام go build -trimpath -mod=vendor. تتضمن إنشاءات المصدر الكاملة تثبيت أدوات Protocol Buffers، gRPC، grpc-gateway، وbuf، ثم إعادة إنشاء الكود باستخدام ./buf.sh. تُجرى اختبارات الوحدة والتكامل عبر docker-compose-tests.yml. المشروع مرخص تحت Apache-2.0.