Skip to main content

شيء واحد لكل مجلد

يتبع الكود قاعدة واحدة: شيء واحد لكل مجلد، اسم الملف يطابق اسم المجلد.

التخطيط العام

اتفاقية المجلدات

كل مجلد يحتوي على شيء واحد بالضبط. الملف الرئيسي يطابق اسم المجلد:
لا توجد ملفات index.ts تجميعية. الاستيرادات تستخدم دائمًا مسار الملف الصريح عبر الأسماء المستعارة:

نمط فصل المزود/الخطاف

عندما يحتوي ملف على مكون React وخطاف معًا، افصلهما في ملفات منفصلة. هذا مطلوب لكي يعمل React Fast Refresh بشكل صحيح.
يعمل Fast Refresh فقط عندما يُصدّر الملف مكونات أو خطافات، وليس كليهما. خلطهما يسبب إعادة تحميل كاملة للصفحة أثناء التطوير.

مجلد بيئة التشغيل

كل وحدة هي صنف بمُنشئ يقبل { workspaceRoot, corpus, ... }. الوحدات لا تستورد بعضها أبدًا - تتواصل عبر أحداث corpus.

موقع البيانات

~/.wolffish/ هي البصمة الكاملة. لا يخزن التطبيق شيئًا في مكان آخر. إلغاء التثبيت هو rm -rf ~/.wolffish/ بالإضافة إلى حذف التطبيق نفسه.

تهيئة مساحة العمل

مجلد defaults/workspace/ في شجرة المصدر هو القالب. عند أول تشغيل:
  1. يتحقق وولفيش من وجود ~/.wolffish/workspace/
  2. إذا لم يكن موجودًا، ينسخ defaults/workspace/ إلى ~/.wolffish/workspace/
  3. إذا كان موجودًا، لا يحدث شيء - لا تُستبدل بيانات المستخدم أبدًا
تعمل تهيئة مساحة العمل فقط عندما لا يكون ~/.wolffish/workspace/ موجودًا. إذا أضفت ملفات افتراضية جديدة إلى defaults/workspace/، لن يحصل عليها المستخدمون الحاليون تلقائيًا. تعامل مع الترحيلات في الكود إذا لزم الأمر.

إعداد بيئة التطوير

تشغيل بيئة التطوير.

إضافة وحدات الدماغ

إضافة وحدة جديدة لخط أنابيب بيئة التشغيل.