HARPLINK ↗HARPLINK DEVELOPERSمساحة المطور ↗متجر التطبيقات ↗
OFFICIAL SANDBOX

جرّب الربط على بيئة HARPLINK التجريبية

https://demo.harplink.net ↗ · اسم المستخدم: demo · كلمة المرور: demo

بيئة مشتركة للفحص ببيانات تجريبية. تظهر نتائج عمليات الكتابة داخل ERP وقد يغيّرها مستخدمون آخرون؛ استخدم بيانات وهمية. كل طلب API يتطلب توكناً والصلاحيات اللازمة. لربط شركة فعلية غيّر عنوان ERP واستخدم حسابها المخوّل.

اختر العملية وافحصها من المتصفح ←
PLUGIN DEVELOPMENT

ابنِ إضافتك. وسّع إمكانات ERP.

طوّر إضافتك، سجل مفتاحك العام، وارفع إصدارك الموقّع للمراجعة والنشر في المتجر.

AVAILABLE TODAY

تثبيت الحزم الموقعة

متجر التطبيقات الحالي يفحص حزمة ZIP وتوقيع الناشر والتوافق، ويعرض عملية التثبيت للمدير المخوّل.

فتح متجر التطبيقات ←
DEVELOPER WORKSPACE

بوابة ناشرين خارجيين

سجل ملف الناشر، أنشئ تطبيقاً، وقدّم الإصدارات الموقعة للمراجعة. يشترط النشر نجاح الفحص المعزول واعتماد المراجع.

فتح مساحة المطور ←

ملفات البداية

نزّل الهيكل وSDK مباشرة، دون الحاجة إلى نسخة من كود ERP لإنشاء مشروعك. غيّر مفتاح المثال وأضف اختبارات وترحيلات الوظائف قبل التقديم.

01 — أنشئ الهيكل القياسي

python manage.py startplugin example_notes \
  --name "Example Notes" --destination ./harplink_example_notes

احتفظ بالكود ضمن api/ وservices/ وmodels/ وmigrations/. كل نموذج في وحدة مستقلة. استخدم harplink-sdk وPlatform API لبيانات ERP، وORM فقط لجداول الإضافة. لا تستورد apps.* أو تربط جداولك مباشرة بجداول ERP.

[project.entry-points."harplink.plugins"]
example_notes = "harplink_example_notes.plugin:get_manifest"

ضمّن harplink-plugin.json داخل Wheel؛ يجب أن يطابق بيان نقطة الدخول ويحدد key وname وversion وpackage_name وdjango_app والصلاحيات والنطاقات المطلوبة. مفتاح الإضافة ثابت عبر الإصدارات.

02 — ابنِ وافحص ووقّع

python -m build --wheel ./harplink_example_notes
python manage.py plugin_package inspect ./dist/plugin.whl
python manage.py plugin_package stage ./dist/plugin.whl
openssl pkeyutl -sign -rawin \
  -inkey /secure/publisher-private.pem \
  -in ./dist/plugin.whl -out ./dist/plugin.whl.sig
python manage.py plugin_package verify ./dist/plugin.whl \
  --signature ./dist/plugin.whl.sig \
  --public-key /secure/publisher-public.pem

مسارات dist أسماء توضيحية: استخدم اسم Wheel الناتج فعلياً. شغّل البناء في بيئة تطوير فيها حزمة build. تسجيل ثقة الناشر ومفتاحه العام يتم بواسطة إدارة المنصة؛ المفتاح الخاص يبقى لدى الناشر.

03 — جهّز ZIP وارفعه

python scripts/build_plugin_bundle.py \
  --wheel ./dist/plugin.whl \
  --signature ./dist/plugin.whl.sig \
  --manifest ./harplink_example_notes/src/harplink_example_notes/harplink-plugin.json \
  --output ./dist/example-notes-1.0.0.zip

تحتوي الحزمة plugin.json وchecksums.sha256 ومجلدي packages وsignatures. قدّمها لإدارة المنصة للمراجعة واعتماد الناشر قبل توزيعها؛ التوقيع بمفتاح جديد وحده لا يجعل الحزمة معتمدة في متجر التطبيقات.

اختبر التثبيت والصلاحيات وعزل الشركات والترحيلات على بيئة تجريبية. بعدها يرفع المدير الحزمة المعتمدة عبر متجر التطبيقات ويراجع نتيجة الفحص قبل التثبيت.

خطوات النشر للمطورين

  1. تسجيل الناشر

    حساب مطور وهوية ناشر ومفتاح عام، مع مراجعة الهوية وتحديد مفاتيح الإضافات المسموحة وإجراء تدوير المفاتيح.

  2. تقديم إصدار

    مسودة تتضمن ZIP موقعاً، وصفاً، صوراً، متطلبات التوافق والصلاحيات، وسياسة الخصوصية وسجل تغييرات. الرفع لا يشغّل كود الحزمة.

  3. فحص ومراجعة

    فحص البنية والتوقيع والاعتماديات، ثم اختبارات داخل بيئة معزولة ومراجعة أمنية ووظيفية. الحالات: مسودة، مقدّم، قيد المراجعة، يحتاج تعديلاً، معتمد، منشور، مسحوب.

  4. نشر وتوزيع

    فهرس مركزي للإصدارات المعتمدة، وصفحات متجر، وتنزيل حزم موثقة؛ يقرر مدير كل تثبيت ERP التنصيب ضمن صلاحياته.

  5. تشغيل مستمر

    مراقبة الأخطاء، دعم المطورين، سحب الإصدارات المتضررة، وخطة تحديث واستعادة مختبرة مع نسخة احتياطية.