diff --git a/content/lang/ar/404.md b/content/lang/ar/404.md new file mode 100644 index 000000000..6700d5099 --- /dev/null +++ b/content/lang/ar/404.md @@ -0,0 +1,5 @@ +# خطأ + +عذراً, يبدو أنّ الصّفحة قد اختفت + +دعنا ننتقل إلى [الرئيسية]('/') diff --git a/content/lang/ar/index.md b/content/lang/ar/index.md new file mode 100644 index 000000000..21666a286 --- /dev/null +++ b/content/lang/ar/index.md @@ -0,0 +1,235 @@ +--- +layout: home +title: Preact | الرئيسية +show_title: false +toc: false +--- + + + +

+ Preact +

+ +

بديل سريع لمكتبة React بخصائص برمجية مطابقة تماماً و حجم ٣ كيلوبايت فقط

+ +

+ ابدأ هنا +   •   + التحويل إلى Preact +

+

+ 5,000+ +

+
+ + +
+

إنها مكتبة من نوع مختلف

+
+ + +
+ metal + +

أقرب إلى المعدن الأساسي

+

+ تزوّد Preact أسرع و أرق طبقة مجرّدة من Virtual DOM فوق DOM. +تقنيات الويب مستقرّة بما يكفي, و حان الوقت للتوقف عن أعادة بناء خصائص مستقرة في المتصفحات أساساً تحت مسمّى الأمان. +

+ +

+ Preact هي صنف أوّل مشتق من منصّة الويب. تقارن الاختلاف بين Virtual DOM و الـ DOM التقليدي نفسه, تسجل جميع الـ events و تعمل بشكل جيد جداً في حال كنت تستخدم أية مكاتب أخرى +

+
+ + +
+ size + +

حجم صغير جداً

+ +

+ معظم المكاتب المستخدمة لبناء صفحات الويب حجمها كبير إلى حد يجعلها الجزء الأكبر من تطبيقك. +على عكس الآخرين, Preact صغيرة جداً حتى أنها الجزء الأصغر من تطبيقك و أكوادك الخاصة هي الجزء الكبير. +

+ +

+ هذا كله يعني, وقت أقل لتحميل الجافاسكريبت الخاصة بتطبيق الويب خاصتك و وقت أقل أيضاً لتحويله و تشغيله - معطية حيزاً و وقت أكثر للأكواد البرمجية خاصتك, فعملياً بإمكانك بناء ما ترغب به من دون التفكير في كيفية محاربة الحجم الكبير للمكاتب المستخدمة. +

+
+ + +
+ performance + +

أداء عظيم

+ +

+ Preact سريعة جداً, ليس فقط لأنها صغيرة الحجم. إنها واحدة من أسرع مكاتب الـ Virtual DOM, الشكر كله لخوارزمية إيجاد الفرق بين DOM و virtual DOM الدقيقة و البسيطة. +

+ +

+ كما و أن هذه المكتبة تتضمن خصائص سرعة و أداء إضافية مثل تجميع التحديثات, توليد العناصر بشكل غير متزامن, إعادة تكرير DOM بالاضافة إلى تحسين أداء تحمّل الـ events أو الأحداث البرمجية عن طريق ربط حالة خصائص العنصر البرمجي الواحد و يسمى مفهوم [Linked State](/guide/linked-state). +

+
+ + +
+ portable + +

محمولة و يكمن تضمينها

+ +

+ Preact صغيرة جداً و هذا يخولك من أخذ مكونات الـ Virtual DOM التي صنعتها إلى أماكن و صفحات لن تستطيع بسهولة أخذها باستخدام مكاتب أخرى. +

+ +

+ استخدم Preact لصناعة أجزاء من صفحات الويب و توصيل المكون أو الجزء خاصتك بالصفحة الأم خالي من الصعوبة والتعقيد. +اصنع قطعة من الواجهة و استخدم جميع المعدات و الإضافات التي كنت لتستخدم لو أنك بدأت صناعة موقع كامل باستخدام Preact. +

+
+ + +
+ productive + +

إنتاج سريع بشكل فوري

+ +

+ صغر الحجم يعطي كثيراً من المرح عندما يخلو من التعقيد وبالتالي لن يؤثر على إنتاجيّتك. +Preact تضمن لك أن تكون منج بعملك فوراً, كما و توفر لك الخصائص التالية. +

+ + +
+ + +
+ compatible + +

Ecosystem Compatible

+ +

+ Virtual DOM Components make it easy to share reusable things - everything from buttons to data providers. + Preact's design means you can seamlessly use thousands of Components available in the React ecosystem. +

+ +

+ Adding a simple preact-compat alias to your bundler provides a compatibility layer + that enables even the most complex React components to be used in your application. +

+
+ + +
+

See it in action.

+
+ + +
+
+

Todo List Component

+

+export default class TodoList extends Component {
+    state = { todos: [], text: '' };
+    setText = e => {
+        this.setState({ text: e.target.value });
+    };
+    addTodo = () => {
+        let { todos, text } = this.state;
+        todos = todos.concat({ text });
+        this.setState({ todos, text: '' });
+    };
+    render({ }, { todos, text }) {
+        return (
+            <form onSubmit={this.addTodo} action="javascript:">
+                <input value={text} onInput={this.setText} />
+                <button type="submit">Add</button>
+                <ul>
+                    { todos.map( todo => (
+                        <li>{todo.text}</li>
+                    )) }
+                </ul>
+            </form>
+        );
+    }
+}
+        
+
+ +
+

Running Example

+

+import TodoList from './todo-list';
+
+render(<TodoList />, document.body);
+        
+
+ +
+
+
+ + +
+
+

Fetch Github Stars

+

+export default class Stars extends Component {
+    async componentDidMount() {
+        let stars = await githubStars(this.props.repo);
+        this.setState({ stars });
+    }
+    render({ repo }, { stars=0 }) {
+        let url = \`//github.com/${repo}\`;
+        return (
+            <a href={url} class="stars">
+                ⭐️ {stars} Stars
+            </a>
+        );
+    }
+}
+        
+
+ +
+

Running Example

+ +

+import Stars from './stars';
+
+render(
+    <Stars repo="developit/preact" />,
+    document.body
+);
+        
+ +
+ +
+
+
+ + +
+

Ready to dive in?

+
+ + +
+

+ We've got separate guides based on whether you have experience with React. +
+ Pick the guide that works best for you! +

+

+ Get Started +   •   + Switch to Preact +

+