عن المشروع

Omi هو إطار عمل لمكونات الويب تم تطويره بواسطة تينسنت. يركز على صغر حجم الحزمة والأداء العالي مع توفير مجموعة شاملة من الميزات لبناء تطبيقات ويب حديثة ومكونات قابلة لإعادة الاستخدام. تشمل الميزات الرئيسية: - **البرمجة التفاعلية المدفوعة بالإشارات** عبر حزمة `reactive-signal`، مما يتيح تفاعلية دقيقة وتحديثات تلقائية لواجهة المستخدم. - **دعم JSX** بصيغة مألوفة، بما في ذلك حقن استيراد `h` تلقائيًا عبر إعداد Vite. - **التوافق مع معيار Web Components**، مما يسمح باستخدام المكونات عبر أطر مختلفة (مثل Vue وReact) بأقل جهد. - **Router وSuspense والتوجيهات** لبناء تطبيقات الصفحة الواحدة والتعامل مع التبعيات غير المتزامنة. - **أوراق الأنماط القابلة للإنشاء** لإدارة الأنماط ومشاركتها بكفاءة. - **تكامل Tailwindcss** ومجموعة من مجموعات البدء ومكونات واجهة المستخدم. يتضمن المستودع حزمًا متعددة: - النواة: `omi`، `omi-form`، `lucide-omi`، `omiu`، `omi-router`، `omi-cli`. - مجموعات البدء: `omi-elements`، `omi-starter-spa`، `omi-starter-ts`، `omi-starter-tailwind`، `omi-starter-js`، `omi-vue`. - المكونات: `omi-weui`، `omi-auto-animate`، `omi-suspense`. - التوجيهات: `omi-transition`، `omi-ripple`. - الأمثلة: `snake-game-2tier`، `snake-game-3tier`، `omi-tutorial`. توضح أمثلة الاستخدام كلاً من أسلوب البرمجة كائنية التوجه (OOP) وأسلوب البرمجة الموجهة بالبيانات (DOP)، مع مثال TodoApp يستخدم الإشارات والقيم المحسوبة. يتم توضيح الاستخدام عبر الأطر المختلفة بأمثلة Vue وReact، مما يوضح كيفية دمج مكونات Omi والتواصل عبر الأحداث المخصصة. المشروع مفتوح المصدر تحت رخصة MIT ويشجع على مساهمات المجتمع ومشاركته.