-
المساهمات
13223 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
365
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو Mustafa Suleiman
-
لا يتم شرح ذلك في دورة علوم الحاسوب، ومادة التصميم الرقمي المنطقي مادة متخصصة، حيث أنها تعتبر جزءًا مهمًا من مجال تصميم الأنظمة الرقمية والأشياء الذكية وتركز على تطبيق المنطق والرياضيات في تصميم وتطوير الأنظمة والدوائر الرقمية. وبعض المفاهيم الأساسية التي يمكن أن تساعدك في فهم هذه المادة هي: البوابات هي عناصر أساسية في التصميم الرقمي وتُستخدم لتنفيذ العمليات المنطقية، وتشمل البوابات الشهيرة بوابة AND وبوابة OR وبوابة NOT. منطق البوز (Boolean logic) يستخدم لتمثيل القيم المنطقية مثل صح وخطأ (1 و0)، ويتم استخدامه في التصميم الرقمي لاتخاذ قرارات مستندة إلى المنطق. تُستخدم الدوائر المنطقية لتنفيذ العمليات المنطقية على البيانات، وتشمل هذه الدوائر البوابات المنطقية المختلفة وتوصيلها معًا لبناء أنظمة أكبر. في التصميم الرقمي المنطقي يتم استخدام السجلات والتسلسلات لتخزين ومعالجة البيانات بشكل متسلسل. تُستخدم مخططات الدوائر لتمثيل تصميم الدوائر المنطقية بشكل رسومي وتساعد في فهم كيفية توصيل البوابات والعناصر لبناء الأنظمة. تعتبر الذاكرة والتخزين جزءًا هامًا من التصميم الرقمي حيث يتم استخدامها لتخزين واسترجاع البيانات. مشكلة السلم والترجمة وتلك المفاهيم تتعلق بتحويل المعلومات من تمثيل إلى آخر، مثل تحويل البيانات من تمثيل عددي إلى تمثيل بيني. وما يتم شرحه في دورة علوم الحاسوب هو التالي: أساسيات الحاسوب وعلومه والتفكير المنطقي وما هي الخوارزميات وكيف تفيد في البرمجة تطبيقات عملية على أساسيات التفكير المنطقي باستخدام بيئة سكراتش Scratch التفاعلية أساسيات لغة البرمجة JavaScript وتطبيق المفاهيم التي تم شرحها باستخدامها، والتوسع في شرح التطبيقات العملية للغات البرمجة أساسيات أنظمة التشغيل المختلفة وكيفية تثبيت البرمجيات اللازمة للبرمجة عليها أساسيات سطر الأوامر في نظام لينكس، وشرح الأسس التي بني عليها النظام مع تطبيقها عمليًا أنظمة قواعد البيانات المختلفة، مع شرح تفصيلي للغة SQL للتعامل معها مبادئ أساسية في أنظمة قواعد البيانات NoSQL المفاهيم الأساسية التي تبنى فيها صفحات الويب مفاهيم أساسية في الشبكات والخوادم، وكيف يتم استقبال الطلبيات إلى الخادم والرد عليها مبادئ الحماية والأمان في الويب
- 1 جواب
-
- 1
-
ربما لم يتم تمكين شريط الحالة في إعدادات التطبيق، ولتحديد ما إذا كان شريط الحالة ممكّنًا، افتح ملف app.json الخاص بتطبيقك وتحقق من القيمة المحددة لخاصية statusBarHidden، ولو كانت القيمة محددة على true، فذلك يعني أن شريط الحالة مخفي. أو من الممكن أنه تم تحديد ارتفاع شريط الحالة بشكل غير صحيح، وإن كنت تحدد ارتفاع شريط الحالة بشكل غير صحيح، فقد لا يظهر، لذلك استخدم خاصية statusBarHeight في ملف app.json. أو بسبب وجود خطأ في الكود، تحقق من أن شريط الحالة مضاف في الكود كالتالي: import React, { useState } from "react"; import { StatusBar } from "react-native"; const App = () => { const [statusBarHidden, setStatusBarHidden] = useState(false); return ( <View style={{ flex: 1 }}> <StatusBar hidden={statusBarHidden} /> </View> ); }; export default App;
-
عليك أولاً تثبيت الحزمة من خلال الأمر التالي: gem install hotwire-livereload بعد ذلك عليك تنفيذ أمر تشغيل السكريبت: rails livereload:install وبشكل إفتراضي يتم الاستماع للتغيرات في الـ View وhelpers و assets. وفي حال أردت إضافة مسار آخر للاستماع إليه عليك إضافته كالتالي: config.hotwire_livereload.listen_paths << Rails.root.join("app/assets/builds") وبالطبع يمكنك تغيير مسار الملفات التي تريد الاستماع إليها بأي مسار تريده.
- 3 اجابة
-
- 1
-
تستطيع إنهاء الدورة في أي وقت فهي متاحة لك مدى الحياة، وبعد الإنتهاء منها والحصول على الشهادة تستطيع الحصول على الميزات التي تقدمها الأكاديمية وهي: سنقدم لك خدمة كتابة السيرة الذاتية مجانًا، ثم سنتابع معك لإعداد حساباتك على مواقع العمل، وحينها إن لم تحصل على عمل يغطي قيمة الدورة التي دفعتها خلال 6 أشهر من حصولك على الشهادة فسنعيد لك ما دفعت، بكل بساطة. لكن نصيحتي إليك هي أن تضع إطار زمني وتلتزم به، حيث أن تعلم أي شيء يتطلب دراسة ممارسة باستمرار خلال فترة زمنية متصلة وليست متقطعة على فترات كبيرة، فمثلاً لا يصح أن تنقطع فترة شهر ثم تعود وتنقطع شهر آخر وهكذا.
-
لست متأكدًا من إمكانية ذلك عن طريق الهاتف، لكن يمكنك محاولة فعل ذلك عن طريق أحد الحزم التالية: 1- auto-py-to-exe وأمر تحميل وتثبيت الحزمة هو: pip install auto-py-to-exe أمر تحويل الكود إلى ملف EXE: auto-py-to-exe 2- أو من خلال حزمة pyinstaller وعليك تثبيت الحزمة: pip install pyinstaller أمر تحويل الكود إلى ملف EXE: pyinstaller --onefile yourFile.py 3- من خلال حزمة nuitka وأمر التحميل هو: pip install nuitka أمر تحويل الكود إلى ملف EXE: nuitka --one-file yourFile.py وفي الأوامر السابقة الخاصة بحزمتي pyinstaller وnuitka عليك استبدال اسم الملف yourFile.py باسم الملف الرئيسي لديك في المشروع وليكن مثلاً app.py
-
طالما أنه مشروع جامعي فيمكنك تجربة Google Cloud حيث يوجد خطة تجربة مجانية بقيمة 300 دولار. أو يمكنك الاستفادة من باقة GitHub Student Developer Pack حيث ستحصلي على العديد من المزايا مجانًا لمدة سنة في حال أنك تدرسين بالجامعة ومن ضمن تلك المزايا: DigitalOcean: رصيد بقيمة 100 دولار لمدة عام (استضافة وذلك هو المهم هنا بالنسبة لسؤالك) JetBrains: اشتراك مجاني في جميع أدوات JetBrains IDEs لمدة 12 شهرًا Bitbucket: 5 مستودعات خاصة مجانية Namecheap: اسم نطاق مجاني لمدة عام واحد Canva Pro: اشتراك مجاني لمدة 3 أشهر Codecademy: اشتراك مجاني لمدة 12 شهرًا Pluralsight: اشتراك مجاني لمدة 6 أشهر و اكثر يمكنك قراءة الشروط والتقديم من هنا: https://education.github.com/discount_requests/application أما بخصوص الاستضافات المدفوعة فهناك التالي بأسعار مقبولة: Kamatera Vultr DigitalOcean UpCloud Hetzner
- 4 اجابة
-
- 2
-
طالما أن بطاقة إيزي باي لديك تعمل حيث أن بعض البطاقات لا تعمل، فعليك التحدث للدعم الخاص بباي بال لمعرفة سبب المشكلة، ولحين حل المشكلة يمكنك تحويل رصيدك لوسيط مالي عن طريق وضع البريد الخاص به بدلاً من بريدك عند السحب من خلال باي بال، أي يقوم بشرائه منك وتستلم أنت أموالك عن طريق حسابك البنكي أو فودافون كاش.
-
طرق شحن رصيد المعتمدة هي: باي بال بطاقة ماستر كارد (من نوع Debit أو Credit) بطاقة فيزا (من نوع Debit أو Credit) آبل باي وفي حال عدم توفر ذلك في سوريا، فهناك خيار واحد وهو وسيط مالي، ستجد في الجروبات على منصات التواصل وسيط مالي معروف ذو ثقة وليس أي شخص لكي لا تتعرض لعملية نصب، وسيقوم بشحن حساب مقابل نسبة، وإذا أردت يمكنني إرسال حساب وسيط مالي للتواصل معه.
- 4 اجابة
-
- 1
-
هل قمت بتثبيت الحزم المطلوبة للمشروع، وهل تعلم الطريقة الصحيحة للتعديل على الكود ليتناسب مع مسارات الملفات في جهازك؟ فمثلاً لو قمت بكتابة نفس الكود في الفيديو فستجد به بعض المسارات الخاص بالملفات عليك تعديلها بما يتناسب مع الملفات الموجودة على حاسوبك والتي تريد العمل عليها. ولا يمكن تحديد سبب المشكلة بدون رؤية الخطأ الذي يظهر لك، ومن الأفضل تعلم أساسيات بايثون حتى تتمكن من استيعاب ما يتم شرحه.
-
بدلاً من استخدام معلمة --onefile استخدم --onedir من أجل تمضين الإعتماديات التي يتم استخدامها في الكود فقط بدلاً من تمضين كافة الحزم. pyinstaller --noconfirm --onedir --console app.py وأيضًا يمكنك استخدام أداة UPX في حال لم تنال ما تريده من خلال الطريقة السابقة، وهي أداة تستخدم للضغط وإخراج ملف exe بحجم صغير بجانب أداة Pyinstaller . عليك تحميلها من هنا: https://github.com/upx/upx/releases/download/v4.1.0/upx-4.1.0-win64.zip ثم قم بفك الضغط وليكن على سطح المكتب مثلاً وستجد مجلد. بعد ذلك استخدم الأمر التالي: pyinstaller --windowed --upx-dir "C:/Users/yourusername/Dependencies/upx-4.0.1" app.py وعليك استبدال المسار بمسار المجلد الخاص بأداة UPX.
- 1 جواب
-
- 1
-
لا يتم إنشاء برامج بصيغة EXE في دورة بايثون، بل يتم كتابة البرنامج وتشغيله من خلال منفذ الأوامر، وإليك ما يتم شرحه في الدورة: البرمجة بلغة بايثون Python إنطلاقًا من أبسط المفاهيم وحتى بناء تطبيق حقيقي. كيفية التعامل مع مختلف الخدمات وإنشاء تطبيقات عملية متنوعة باستخدام بايثون ومكتباتها مثل قواعد البيانات والبريد الإلكتروني وأوراق Excel واستخراج البيانات من الويب Web Scraping وغيرها. ستتعلم أساسيات إطار العمل جانغو Django، وتطور تطبيقًا عمليًا لإدارة المهام عبره. أساسيات إطار العمل فلاسك Flask ثم ستتعرف على مفهوم الواجهات البرمجية APIs، وتطور واجهة برمجية. سنستخدم بوابة الدفع سترايب Stripe و PayPal في تطبيقاتنا، وسنتعلم مختلف طرق استعمالها. إنشاء متجر إلكتروني ونقطة بيع وستبني إضافات برمجية يمكنك استخدامها مع نظام أودو Odoo لإدارة الأعمال وفق متطلبات العميل. مبادئ التعامل مع البيانات، ثم تتعمق في التحليل الإحصائي Statistical analysis والتصوير البياني Data visualization، ثم تطبق ما تعلمته عمليًا على أمثلة حقيقية. مبادئ تعلم الآلة Machine learning وأنواعها الأساسية مثل الانحدار Regression والتصنيف Classification والتجميع Clustering، وسنتحدث عن التعليم المعزز Reinforcement learning.
- 3 اجابة
-
- 1
-
لا تحتاج إلى شهادة للعمل في مجال البرمجة أو الذكاء الاصطناعي، لكن إذا أردت أن تصبح باحثًا في مجال الذكاء الاصطناعي، فسيساعدك ذلك في الحصول على وظيفة في مجال البحث حيث تتطلب معظم الوظائف البحثية في الذكاء الاصطناعي درجة علمية متقدمة، مثل درجة الماجستير أو الدكتوراه في الذكاء الاصطناعي أو مجال ذي صلة، مثل علوم الكمبيوتر أو الرياضيات.
- 6 اجابة
-
- 1
-
يتمثل الفرق الرئيسي بين الباحث والمطور في مجال الذكاء الاصطناعي في الإهتمامات المخلتفة، حيث يركز الباحثون على تطوير المعرفة والفهم الجديدين في مجال الذكاء الاصطناعي، بينما يركز المطورون على تطبيق المعرفة والتقنيات الحالية لحل المشكلات. ويبحث الباحثون في الذكاء الاصطناعي في أسس الذكاء الاصطناعي، بما في ذلك التعلم الآلي، والمعالجة الطبيعية للغة، والرؤية الحاسوبية ويطورون تقنيات جديدة وتحسينات للتقنيات الحالية، ثم ينشرون أبحاثهم في المجلات العلمية والمؤتمرات. بينما يبني المطورون أنظمة الذكاء الاصطناعي التي تحل المشكلات في مجموعة متنوعة من المجالات، بما في ذلك الرعاية الصحية، والتصنيع، والمالية، والتسويق، ويستخدمون تقنيات الذكاء الاصطناعي الحالية لتطوير منتجات وخدمات جديدة. ولكي تصبح باحثًا في مجال الذكاء الاصطناعي، تحتاج إلى الحصول على درجة علمية متقدمة في الذكاء الاصطناعي أو مجال ذي صلة، مثل علوم الكمبيوتر أو الرياضيات، ويمكنك أيضًا الحصول على خبرة في البحث من خلال العمل في مختبر أو المشاركة في مشاريع بحثية. وبالنسبة لتصبح مطورًا في الذكاء الاصطناعي، تحتاج إلى الحصول على درجة علمية في علوم الكمبيوتر أو أي مجال ذي صلة، بالإَضافة إلى الحصول على خبرة في تطوير الذكاء الاصطناعي من خلال العمل في شركة تكنولوجيا أو المشاركة في مشاريع تطويرية.
- 6 اجابة
-
- 1
-
من الأفضل استخدامه وJupyter Notebook هو بيئة عمل ممتازة لتعلم الآلة لعدد من الأسباب: يسمح Jupyter Notebook بتنفيذ الشفرة وعرض نتائج التحليل بشكل فوري في نفس الوثيقة، مما يجعل من السهل تجربة أفكار جديدة والتوصل إلى رؤى جديدة. يمكن استخدامه لإنشاء وثائق تفاعلية يمكن مشاركتها بسهولة مع الآخرين، وبالتالي يجعل من السهل تعليم الآخرين حول مشاريع تعلم الآلة الخاصة بك. يوفر مجموعة واسعة من المكونات الإضافية والوحدات النمطية التي يمكن استخدامها لتوسيع وظائفه، مما يجعله قابلاً للتخصيص بسهولة لاحتياجاتك المحددة.
- 4 اجابة
-
- 1
-
مكتبة face-recognition ومكتبة OpenCV هما مكتبتان للتعرف على الوجوه، ولكنهما تختلفان في بعض الجوانب الرئيسية، بما في ذلك: مكتبة face-recognition مصممة خصيصًا للتعرف على الوجوه، بينما مكتبة OpenCV هي مكتبة عامة للمعالجة الرؤية الحاسوبية، وتتضمن العديد من الوظائف، بما في ذلك التعرف على الوجوه. مكتبة face-recognition أسهل في الاستخدام من مكتبة OpenCV، حيث توفر واجهة برمجة تطبيقات بسيطة تسهل على المطورين إنشاء تطبيقات للتعرف على الوجوه، أما مكتبة OpenCV أكثر تعقيدًا، ولكنها توفر مزيدًا من التحكم في عملية التعرف على الوجوه. ومن حيث الأداء فمكتبة face-recognition أسرع من مكتبة OpenCV، لأنها تستخدم خوارزميات أكثر كفاءة، بينما مكتبة OpenCV قد تكون أبطأ، لكنها توفر مزيدًا من الدقة أي أنها أبطأ أو أسرع حسب الخوارزمية
- 5 اجابة
-
- 1
-
تستطيع البحث على اليوتيوب عن تخصيص متاجر سلة، وستجد شروحات توضح لك الأمر، وكل ما تحتاج هو معرفة جيدة بلغة CSS وأيضًا كيفية استخدام أدوات المطور DevTools في جوجل كروم من أجل تفقد عناصر القالب وإختيار العنصر الصحيح وتخصيصه من خلال CSS، وأيضًا إلمام بكيفية تصميم واجهة موقع ويب جيدة من حيث الألوان والخط والأيقونات وإنشاء بعض التصماميم من خلال فوتوشوب إن تطلب الأمر من جانب العميل أو الإكتفاء بالتخصيص من خلال CSS ويوفر لك هو التصاميم والهوية الخاصة بالمتجر. وستجد هنا مصادر جيدة لتعلم ما ذكرته:
-
إنشاء شبكة تواصل مثل فيسبوك؟ نعم يمكنك ذلك، هل الخوارزميات الخاصة بتلك الشبكة ستصبح مثل فيسبوك في يوم وليلة؟ بالطبع لا، فأنت بحاجة إلى سنوات من أجل تطوير خورازمية ضخمة مشابهة وبحاجة إلى فريق عمل ضخم. أما عن إنشاء تطبيق مثل واتساب، فيمكنك إنشاء تطبيق مماثل ويمكنك البحث على يوتيوب عن What'sApp Clone. أما عن ChatGPT فذلك مستحيل، حيث أن إنشاء نموذج ذكاء اصطناعي مشابه بحاجة إلى سنوات وفريق عمل خبير وليس شخص واحد فقط بالإضافة إلى أموال طائلة، ولكن يمكنك استخدام نموذج ذكاء اصطناعي مفتوح المصدر LLaMA 2 مثل الخاص بفيسبوك وتدريبه على البيانات الخاصة بك مثلاً أو استخدامه في مشروعك.
- 1 جواب
-
- 1
-
لاحظ أنك تستخدم دالة بانية باسم Function وهي خاصة بإنشاء الدوال، عليك استخدام إعلان الدالة function declaration من خلال حرف f صغير كالتالي: function(err){ } وليس: Function(err){ } وما أقصد بأنها تقوم بإنشاء دالة فهي تستخدم لإنشاء دالة بالفعل لاحظ المثال التالي: const sum = new Function('a', 'b', 'return a + b'); console.log(sum(2, 6)); // Expected output: 8 قمت بكتابة معاملات للدالة وأيضًا القيمة التي سيتم إعادتها.
-
ما تتحدث عنه هو الـ Syntax بالإضافة إلى أفضل الممارسات أثناء كتابة الكود حيث يمكن الاطلاع علىPEP 8 وهو مستند يحتوي على مجموعة من المعايير والإرشادات المتعلقة بأسلوب كتابة الأكواد في لغة Python. وتمثل "PEP" اختصارًا لـ "Python Enhancement Proposal"، وهي وثائق تُستخدم لاقتراح تحسينات للغة Python ومكتباتها المرتبطة. والأمر يطول شرحه لكن هناك بعض القواعد الأساسية لكتابة أكواد Python هي التالي: المسافات البيضاء (Whitespace) Python تستخدم المسافات البيضاء (المسافات والتابات) لفهم وتنسيق الأكواد، ويجب أن تكون المسافات محددة بشكل صحيح. for i in range(5): print(i) الهوامش (Indentation) تعتمد بايثون على التعريفات لتنظيم الكود وبالتي يجب أن تكون التعريفات متساوية من حيث التباعد (indentation)، والعادة تستخدم أربع مسافات أو مسافتين (PEP 8 توصي باستخدام أربع مسافات). if x > 5: print("x is greater than 5") التعليقات (Comments) يمكنك إضافة تعليقات لشرح الكود باستخدام الرمز #، والتعليقات لا تؤثر على تنفيذ البرنامج. # هذا تعليق أسماء المتغيرات والدوال يمكن استخدام الأحرف الأبجدية (a-z و A-Z) والأرقام (0-9) وشرطة سفلية (_) في تسمية المتغيرات. ابدأ اسم المتغير بحرف (a-z أو A-Z) أو بشرطة سفلية (_). ليس مسموحًا بالبدء برقم. Python حساسة لحالة الأحرف، مما يعني أن المتغيرات "myVar" و "myvar" تعتبران مختلفتين. لا يمكن استخدام كلمات محجوزة مثل if و while و for كأسماء متغيرات. يُفضل اتباع بعض الممارسات الجيدة في تسمية المتغيرات: استخدم أسماء متغيرات واضحة ومعبرة توضح الغرض من المتغير. استخدم حروف صغيرة لأسماء المتغيرات وفصل الكلمات بواسطة الشرطة السفلية (snake_case). مثال: my_variable. لأسماء المتغيرات الثابتة والمتغيرات التي تعتبر خاصة بالصف تبدأ بحرف تسطيري واحد (underscore), وذلك للإشارة إلى أنها خاصة. مثال: _private_variable. يُفضل استخدام اختصارات لأسماء المتغيرات إذا كان ذلك يزيد من وضوح الكود، مثال: num_of_items يمكن تختصرها إلى num_items. name = "mustafa" التعبيرات الشرطية (Conditional Statements) استخدم تعبيرات شرطية مثل if, elif, و else للتحكم في تدفق البرنامج. if x > 10: print("x is greater than 10") elif x == 10: print("x is equal to 10") else: print("x is less than 10")
- 2 اجابة
-
- 1
-
ربما المشكلة تكمن في أنك تستخدم متغيرات محلية في شرط المقارنة، وتلك المتغيرات يتم حذفها بعد كل طلب من الصفحة، لذلك حتى لو كانت القيمة صحيحة في البداية، ستصبح غير صحيحة بعد ذلك. حاول استخدام متغيرات عالمية، حيث أن تلك المتغيرات لا يتم حذفها بعد كل طلب، لذلك ستظل صحيحة حتى لو قمت بإعادة تحميل الصفحة. كالتالي: // تعريف متغيرات عالمية $qINkg = $_POST['qINkg']; $sCustomercredit = $_POST['sCustomercredit']; // Check if the quantity is greater than the customer's credit if ($qINkg >= $sCustomercredit) { // Show an error message echo "The quantity is greater than the customer's credit."; exit; } وبخصوص jQuery الكود سيكون كالتالي: let qINkg = $(".qINkg").val(); let sCustomercredit = $(".sCustomercredit").val(); // Check if the quantity is greater than the customer's credit if (qINkg >= sCustomercredit) { // Show an error message Swal.fire( <?php echo json_encode($langs->trans('error')); ?>, <?php echo json_encode($langs->trans('invalidReturn1')); ?>, 'error' ); event.preventDefault(); return false; } أيضًا من الأفضل إضافة فحص إضافي للتأكد من أن المتغيرات ليست فارغة باستخدام الشرط التالي: PHP if (!empty($qINkg) && !empty($sCustomercredit)) { // Check if the quantity is greater than the customer's credit if ($qINkg >= $sCustomercredit) { // Show an error message echo "The quantity is greater than the customer's credit."; exit; } } JS: if (qINkg && sCustomercredit) { // Check if the quantity is greater than the customer's credit if (qINkg >= sCustomercredit) { // Show an error message Swal.fire( <?php echo json_encode($langs->trans('error')); ?>, <?php echo json_encode($langs->trans('invalidReturn1')); ?>, 'error' ); event.preventDefault(); // Prevent form submission return false; }
-
تستطيع معرفة آخر التحديثات المضافة في أكاديمية حسوب من خلال صفحة آخر التحديثات. وما تم إضافته مؤخرًا في دورة جافاسكريبت هو التالي: أضفنا مسارًا جديدًا لتطوير تطبيق تعلم اللغات باستخدام Next.js وتقنيات الذكاء الاصطناعي المقدمة من OpenAI إلى دورة تطوير التطبيقات باستخدام JavaScript. ستتعلم في 6 ساعات فيديو كيف تتعامل مع OpenAI API ومختلف تقنياتها وأبرزها ChatGPT، وكيف تستفيد من هذه التقنيات في مشاريعك الخاصة بتطويرنا لتطبيق متكامل عبر Next.js و MUI يوضح الاستخدام العملي لها.
- 1 جواب
-
- 1
-
من الأسهل لك إذا لم يكن لديك دراية كبيرة بجافاسكريبت استخدام مكتبة جاهزة لإرسال الإشعارات، مثل مكتبة pushjs وبعد تثبيت المكتبة ستقوم بإرسال إشعار كالتالي: Push.create("Hello world!", { body: "How's it hangin'?", icon: '/icon.png', timeout: 4000, onClick: function () { window.focus(); this.close(); } }); وستجد تفصيل أكثر في المستند الرسمي وأيضًا مثال حي للإشعارات المرسلة للمتصفح: https://pushjs.org
-
لا سبيل للتراجع عن ذلك لللأسف، عليك الإعتماد في المستقبل على Git وGitHub بحيث تقوم برفع التعديلات للمستودع على وGitHub وسيتم حفظها هناك للأبد وتستطيع التراجع عنها بسهولة. وعدا تلك الطريقة ستكون عرضة لفقد ملفات مشروعك في أي وقت ولأي سبب مثلما حدث معك. وهنا شرح وافي لأساسيات استخدام Git وGitHub:
- 2 اجابة
-
- 1