عن المشروع

Nodezator هو تطبيق سطح مكتب يعمل كمحرر عقد بايثون عام. يتيح للمستخدمين ربط دوال بايثون وغيرها من الكائنات القابلة للاستدعاء بصريًا لبناء سلوك بارامتري مرن، وبيانات، وتطبيقات، ومقتطفات برمجية. الأداة مبنية بلغة بايثون الخالصة فوق pygame-ce و numpy، وتُصان بواسطة Kennedy Richard Silva Guerra كجزء من مشروع Indie Smiths. تشمل القدرات الرئيسية: - **إنشاء عقد سهل**: يمكن تحويل أي دالة أو كائن قابل للاستدعاء في بايثون إلى عقد بإضافة سطر بسيط `main_callable = ...`. يشمل ذلك الكائنات القابلة للاستدعاء من مكتبات طرف ثالث مثل numpy و Pillow و matplotlib و CadQuery. - **تكامل بايثون**: يمكن تصدير الرسوم البيانية ككود بايثون عادي، مما يضمن عدم اعتماد سير العمل بشكل مفرط على التطبيق. يُوصف Nodezator بأنه تمثيل مرئي قائم على العقد لبايثون. - **كشف القرب للمآخذ**: يمكن للمستخدمين ربط العقد دون الحاجة إلى دقة ماوس مثالية، مع مسافة كشف قابلة للتخصيص ورسومات. - **معاملات متغيرة الأنواع**: يدعم عقد `*args` و `**kwargs` مع مآخذ نائبة تقبل اتصالات متعددة، بما في ذلك تفكيك التكرارات والقواميس. - **أدوات متخصصة**: تدعم أدوات الإدخال للأعداد الصحيحة/العشرية السحب للتعديل، والتعبيرات الحسابية، وبعض دوال بايثون المدمجة. - **برمجة وظيفية**: يمكن للعقد الإشارة إلى الكائنات القابلة للاستدعاء نفسها (وليس فقط الاستدعاءات)، مما يتيح دوالًا عالية الترتيب مثل `map` و `pow` في وضع الاستدعاء. - **حزم العقد**: يحدد المستخدمون العقد في مجلدات (حزم عقد) يمكن إبقاؤها محلية، أو مشاركتها يدويًا، أو توزيعها كحزم بايثون عبر PyPI. يساعد موقع معرض العقد في اكتشاف ومشاركة حزم العقد. - **اختبار النظام**: أتمتة واجهة مستخدم مدمجة لاختبارات النظام، يمكن الوصول إليها عبر Shift+Ctrl+F8. التثبيت يتم عبر `pip install --upgrade nodezator`، أو يمكن تنزيل المصدر وتشغيله كتطبيق محمول مع تثبيت بايثون و pygame-ce و numpy. يتضمن المشروع دليل مستخدم متاح داخل التطبيق وعبر الإنترنت، ويشجع المساهمات المجتمعية عبر مناقشات GitHub وطلبات السحب إلى فرع التطوير. المصدر مخصص للمجال العام بموجب The Unlicense.