Skip to content
Nachi3D Labs

المشاريعTavernKeeper

TavernKeeper

نشط

مرافق D&D 5e — أوراق شخصيات، موسوعة، حملات وسجلات مولَّدة بالذكاء الاصطناعي.

عرض مباشرالكود المصدري متاح عند الطلب
TavernKeeper — شاشة ترحيب تطبيق مرافق D&D — screenshot 1

حول هذا المشروع

نظرة عامة

TavernKeeper تطبيق ويب لمجموعات D&D المتحلقة حول الطاولة. اللاعبون ينشئون شخصياتهم عبر مرشد من 6 خطوات، أسياد اللعبة يديرون حملاتهم بفصول وأحداث، وعندما يُختم فصل، Llama 3.3 70B عبر Groq يولّد سجلًا سرديًا يُدفع إلى يوميات كل لاعب الشخصية. مصمم لمجموعتي ولآخرين يلعبون حول طاولة حقيقية — لا محاكاة قتال، لا رمي نرد (إلا إذا شئت)، ولا أدوات طاولة افتراضية. الفكرة الجوهرية: التطبيق يتذكر ليتسنى للاعبين أن يلعبوا.

الخيارات التقنية: monorepo بـ Express + React + Vite، SQLite (node:sqlite محليًا، better-sqlite3 على Railway) بدل Postgres لأن الحجم لا يبرره بعد، bcryptjs بدل bcrypt الأصلي لتجنب أدوات بناء Windows، vite-plugin-pwa لتثبيت النسخة المحمولة.

بنيته لأن مشكلة « لا أتذكر ماذا حدث في الجلسة السابقة » كانت حقيقية في مجموعتي، وكل أداة قائمة إما تحاول استبدال الطاولة المادية أو تغرقك بالميزات.

الميزات الرئيسية

ما يقوم به

منشئ شخصيات مع عرق/صنف/إحصاءات/معدات/تعاويذ، يشمل بونصات القدرات العرقية
سجل حملة بفصول، أحداث وسجلات مولَّدة بالذكاء الاصطناعي عبر Groq
مرشد ترقية موجّه يتكيف حسب الصنف/المستوى — رمية PV، صنف فرعي، ASI أو موهبة، تعاويذ جديدة
راحة قصيرة وراحة طويلة مع تتبع نرد الضربات، للمجموعة أو لكل شخصية
دعوات حملة عبر رمز من 6 حروف أو رابط فريد، أدوار سيد لعبة/لاعب لكل حملة
PWA قابل للتثبيت على Android و iOS وسطح المكتب — 105 اختبار Playwright يمر

مبني باستخدام

التقنيات

React 18
Express
node:sqlite
Groq AI
Playwright
Railway

ما كنت سأفعله بشكل مختلف

بعد التأمل

سأختار Postgres من اليوم الأول — ترحيل SQLite دين سأدفعه لاحقًا. وسأتجاوز مصادقة الـ tokens الابتدائية لأذهب مباشرة إلى كلمات المرور؛ مسار الترحيل التدريجي كلّف من التعقيد أكثر مما وفّره.

تريد شيئًا مثل هذا لك؟

أخبرني بما تريد بناءه وسنرى ما إذا كان مناسبًا.