هل حاولت يومًا شرح جدول بيانات لشخص لا يفهم جداول البيانات؟ تتجمد أعينهم في مكان ما بين كلمة "pivot" (محوري) و"لماذا العمود D مخفي؟" تخيل الآن أنه يمكنك تحويل جدول البيانات هذا إلى تطبيق ويب صغير ولطيف—أزرار! أشرطة تمرير! رسوم بيانية ترقص عندما تهز شريط التمرير!—دون تعلم JavaScript أو CSS أو الفنون المظلمة. هذا هو Streamlit، مكتبة Python التي تحول النصوص البرمجية إلى تطبيقات قابلة للمشاركة مثلما تحول آلة صنع العصير الفاكهة إلى وجبة إفطار.
ولكن إليك المشكلة: ابحث عن "أفضل دروس Streamlit"، وستقع في حفرة أرنب هي جزء منها Hogwarts، وجزء آخر دليل Ikea. أي منها يساعدك فعليًا في بناء شيء يمكنك عرضه على رئيسك في العمل بحلول يوم الاثنين؟ لقد أمضيت أسبوعًا في الخوض في الوثائق ومقاطع الفيديو وأدلة المجتمع وعدد قليل من مقاطع YouTube "تم تسجيلها على بطاطس" لرسم خريطة لأفضل دروس Streamlit—حسب مستوى المهارة وحسب ما ستقوم ببنائه.
هذا هو دليلك الميداني سهل الاستخدام على طريقة Pogue: ما الذي تبدأ به، وماذا تشاهد بعد ذلك، وأي الأمثلة لن تتعطل عند تحديث Streamlit، وكيف تتجنب المآزق التي تلتهم الوقت مثل كلب لابرادور مع جورب.
ما هو Streamlit بالضبط، بلغة بسيطة؟
Streamlit هي مكتبة Python تأخذ نصوص البيانات الخاصة بك وتغلفها في واجهة فورية. بدلاً من كتابة تطبيق Flask أو المصارعة مع React، يمكنك رش التعليمات البرمجية الخاصة بك باستدعاءات Streamlit مثل st.button و st.slider و st.line_chart، وفجأة—لديك تطبيق ويب قابل للمشاركة.
- Streamlit يعالج صفحة الويب.
- أنت تشارك رابطًا. يتوقف رئيسك في العمل عن إرسال لقطات الشاشة بالبريد الإلكتروني.
أفضل دروس Streamlit: قائمة منسقة ولا معنى لها
لقد نظمت أفضل دروس Streamlit في مستويات. اختر مسارك؛ امزج وطابق إذا كنت طموحًا.
المستوى 1: مبتدئ تمامًا (أول تطبيق في 60-90 دقيقة)
- وثائق "البدء في استخدام Streamlit" الرسمية
لماذا هي رائعة: إنها حديثة ودقيقة ومصممة من قبل فريق Streamlit. ستقوم بتثبيت Streamlit، وتعلم كيف يعمل نموذج إعادة التشغيل (تنبيه: يتم تشغيل البرنامج النصي من أعلى إلى أسفل في كل مرة تتفاعل فيها)، وإنشاء تطبيق صغير ومرضي. ابدأ هنا قبل أي شيء آخر. إنه أقصر طريق إلى لحظة "لقد بنيت شيئًا".
- البرنامج التعليمي الرسمي "إنشاء تطبيق"
لماذا هو رائع: ستقوم ببناء تطبيق حقيقي يستكشف مجموعة بيانات Uber لعمليات الالتقاء. ترجمة: سترى الأدوات والرسوم البيانية والخرائط والتخزين المؤقت أثناء العمل، مع تفسيرات واضحة وأجزاء قابلة للنسخ واللصق تعمل بالفعل. إذا كنت متعلمًا بصريًا، فسينجح هذا بسرعة.
- فهرس دروس Streamlit
لماذا هو رائع: مركز للمشاريع الموجهة: المصادقة وقواعد البيانات وتحميل الملفات والتخطيط المتقدم والمزيد. إنه مثل قائمة في مطعم—ابدأ بالفطائر، وتخرج إلى عجة البيض مع فلفل الهالبينو الإضافي.
ما الذي ستكون قادرًا على فعله بعد المستوى 1:
- إنشاء تطبيق عملي من برنامج Python.
- إضافة أدوات (أشرطة التمرير، التحديدات، الأزرار)، وعرض الرسوم البيانية، وتخزين البيانات مؤقتًا.
- فهم سبب "إعادة تشغيل" البرنامج النصي الخاص بك وكيفية الاحتفاظ بالحالة دون رمي جهاز الكمبيوتر المحمول الخاص بك.
المستوى 2: من مبتدئ إلى متوسط (اجعله مفيدًا، واجعله جميلاً)
4) "إتقان Streamlit في دورة واحدة - 4 مشاريع حقيقية متضمنة" (فيديو)
لماذا هو رائع: التعلم القائم على المشاريع يلتصق. تنقلك هذه الدورة من الأساسيات إلى توصيل قواعد البيانات وأنماط أكثر تقدمًا. إذا كنت تريد أن تشعر وكأنك منشئ تطبيقات حقيقي، وليس مجرد كاتب نصوص بأزرار، فهذا هو المسار السريع.
- "برنامج Streamlit التعليمي الكامل: من الصفر إلى الجاهزية للإنتاج" (مقالة)
لماذا هو رائع: إنها نظرة عامة حديثة وصادقة حول بناء لوحات المعلومات في عام 2025 والمقايضات. ستحصل على تكتيكات حول التعبئة والتغليف والنشر ومتى تصل إلى أدوات أخرى. إذا كنت تفكر: "هل سيصمد Streamlit قيد الاستخدام الفعلي؟"—فهذا هو فحص الواقع الخاص بك.
- حديث عن أفضل الممارسات من مستخدم Streamlit قوي (فيديو)
لماذا هو رائع: أنماط، أنماط، أنماط. ستتعلم كيف يقوم المحترفون بتنظيم التطبيقات وإدارة الأداء وتلميع تجربة المستخدم. إنه مثل إلقاء نظرة خاطفة على مرآب جارك الخالي من العيوب والتقرير بأنك أنت أيضًا تستحق صناديق تحمل علامات.
ما الذي ستكون قادرًا على فعله بعد المستوى 2:
- بناء تطبيقات متعددة الصفحات بهيكل نظيف.
- إدارة حالة التطبيق دون السباغيتي.
- تسريع التطبيقات البطيئة باستخدام التخزين المؤقت واستراتيجيات البيانات.
- النشر بثقة، مع قائمة تحقق ذهنية.
المستوى 3: مشاريع عملية واقعية (أظهر لفريقك شيئًا رائعًا)
7) تطبيق نسخ صوتي باستخدام الذكاء الاصطناعي + Streamlit (فيديو)
لماذا هو رائع: مثال قوي على "الذكاء الاصطناعي يلتقي بواجهة المستخدم": تحميل الملفات، واستدعاء النموذج، وعرض النتائج. حتى إذا كنت لا تقوم ببناء تطبيق نسخ، فستقوم بمسح الأنماط لأي مشروع مدعوم بالذكاء الاصطناعي—أشرطة التقدم ومعالجة الأخطاء والمهام طويلة الأمد.
- عروض توضيحية عملية للتطبيقات تجمع بين تنظيف البيانات والتصور وتحويل الملفات
لماذا هو رائع: فائدة واقعية. تطبيقات تقبل بيانات قبيحة وتنظفها وتصورها وتصدرها بالتنسيق الذي يريده رئيسك تمامًا (CSV إلى Excel، أي شخص؟). إنها خطوة واثقة نحو "يمكنني بالفعل استبدال نصف الأعمال اليدوية لفريقي بلوحة معلومات يمكنهم النقر عليها".
انعطافة سريعة: ما هو Streamlit رائع فيه—وأين ليس كذلك
رائع في:
- نماذج أولية سريعة تبدو وكأنها تطبيقات حقيقية.
- الأدوات ولوحات المعلومات الداخلية التي يمكن لفريقك استخدامها بالفعل.
- عروض علوم البيانات: الرسوم البيانية والخرائط وأشرطة تمرير النماذج وتجارب "ماذا لو؟".
ليس رائعًا جدًا في:
- تطبيقات معقدة متعددة المستخدمين مع مصادقة ثقيلة وأدوار وسير عمل مؤسسي.
- واجهات أمامية حرفية مثالية.
- تطبيقات عامة ضخمة وعالية التزامن دون بعض الهندسة الإضافية حولها.
إذا كان تطبيقك هو "نحن بحاجة إلى واجهة مستخدم سهلة الاستخدام عبر كود Python"، فإن Streamlit هو حلم. إذا كان تطبيقك هو "نعيد بناء Airbnb"، فربما لا.
جولة لطيفة في النموذج الذهني لـ Streamlit
إذا كنت قادمًا من مجموعات الويب التقليدية، فإن Streamlit يبدو... غريبًا في البداية. أنت لا تقوم بتوصيل المسارات والقوالب؛ أنت تكتب برنامج Python يعيد رسم نفسه في كل مرة يتفاعل فيها المستخدم.
- يتم تشغيل البرنامج النصي من أعلى إلى أسفل في كل تفاعل.
- يتم قراءة قيم الأدوات في كل تشغيل.
- استخدم حالة الجلسة لتذكر الخيارات عبر عمليات التشغيل.
- قم بتخزين العمل المكلف (تنزيل البيانات وتحميل النماذج) مؤقتًا حتى لا يزحف تطبيقك.
فكر في الأمر على أنه PowerPoint يقوم بتحديث نفسه بناءً على ما ينقره جمهورك—ولكنك تتحكم في الشرائح باستخدام Python بدلاً من سحب المربعات.
مسار التعلم بالممارسة: قم بالبناء في نهاية هذا الأسبوع، وأبهر يوم الاثنين
إليك منهج عملي وقابل للتناول—بعد ظهرين كحد أقصى.
صباح السبت: تطبيقك الأول ولحظات "آها"
- قم بتثبيت Streamlit وقم بتشغيل تطبيق Hello. اتبع دليل "البدء" الرسمي لإنشاء واجهة مستخدم بسيطة ومخطط. إنه أحدث مصدر للحقيقة.
- اعمل من خلال "إنشاء تطبيق"—عمليات الالتقاء في Uber والخرائط والفلاتر. ستلمس st.cache_data، مما سيجعل مستقبلك يذرف دموع الامتنان.
بعد ظهر السبت: الأدوات والتخطيط اللذين ستستخدمهما بالفعل
- أضف st.sidebar لنقل عناصر التحكم خارج التدفق الرئيسي.
- قم بإنشاء لوحة صغيرة لتنظيف البيانات: file_uploader لـ CSV، ومربع تحديد لاختيار العمود، ومربعات اختيار لإسقاط رؤوس NA أو الأحرف الصغيرة، وزر لتصدير النتائج. استخدم أمثلة مثل تطبيقات الأدوات التي تحول CSV إلى Excel.
- تعلم كيفية إظهار التقدم: st.progress و st.spinner ورسائل st.status. يكره الناس التحديق في الشاشات الصامتة.
صباح الأحد: الارتقاء إلى مستوى الصفحات المتعددة والحالة
- قسّم تطبيقك إلى صفحات. قم بإنشاء صفحة "البيانات" وصفحة "التصور" وصفحة "التصدير". يجعلك تبدو محترفًا دون الكثير من العمل.
- استخدم st.session_state لتذكر الخيارات (الأعمدة المحددة والفلاتر) بينما يرتد المستخدم.
- أضف أداة تزيين التخزين المؤقت إلى أي وظيفة تجلب البيانات أو تقوم بتحميل نموذج.
بعد ظهر الأحد: النشر والتلميع
- انشر إلى خدمة استضافة أو حاوية؛ قم بتضمين requirements.txt.
- أضف st.toast لتأكيدات ودية و st.error للحواجز الواقية.
- مكافأة: يؤدي تضمين إجراء صغير بالذكاء الاصطناعي—تلخيص جدول أو تنظيف نص فوضوي أو إنشاء عناوين مخططات تلقائيًا من أسماء الأعمدة—إلى تحويل "تطبيق لطيف" إلى "عرض مذهل". يوضح التجول الإرشادي للنسخ المدعوم بالذكاء الاصطناعي النمط الخاص بمعالجة العمليات الطويلة وتحديث واجهة المستخدم عند وصول النتائج.
قائمة التحقق: مفاهيم Streamlit الخمسة التي تكافئك إلى الأبد
- الأدوات هي متغيرات: قم بتخزين قيمها وإعادة استخدامها.
- التخزين المؤقت هو الأكسجين: قم بتخزين تحميلات البيانات وتحميلات النماذج والحسابات الطويلة مؤقتًا.
- حالة الجلسة هي الذاكرة: احتفظ بخيارات المستخدم عبر عمليات إعادة التشغيل.
- التخطيط هو التواصل: الأشرطة الجانبية والأعمدة وعلامات التبويب—استخدمها للتبسيط.
- التعليقات تتغلب على الصمت: الدوارات وأشرطة التقدم والخبز المحمص. أخبر المستخدم دائمًا بما يحدث.
المآزق الشائعة (وكيفية تجنبها)
- "تتم إعادة تعيين متغيراتي عندما أنقر فوق زر!" هذا هو نموذج إعادة التشغيل؛ استخدم st.session_state للاحتفاظ بالأشياء المهمة.
- "إنه بطيء عند النقر الأول." قم بتخزين وظائفك الثقيلة مؤقتًا. فكر أيضًا في تهيئة النماذج عند بدء تشغيل التطبيق.
- "لماذا مخططتي فارغة؟" إذا تغير الإعداد الافتراضي للأداة بين عمليات التشغيل، فقد تقوم بتصفية بياناتك. قم بتعيين الإعدادات الافتراضية المعقولة.
- "لقد تعطل بعد التحديث." قم بتثبيت متطلباتك أو اقرأ ملاحظات الترحيل. تميل الدروس الرسمية إلى البقاء متزامنة.
زاوية المقارنة: Streamlit مقابل المشتبه بهم المعتادين
- Streamlit مقابل Dash: Dash أكثر قابلية للتكوين وجاهزية للمؤسسات ولكنه يستغرق وقتًا أطول للانطلاق. Streamlit أسرع في النموذج الأولي؛ Dash أقوى لسير العمل المعقد للإنتاج.
- Streamlit مقابل Gradio: يتألق Gradio في عروض الذكاء الاصطناعي السريعة، وخاصةً نموذج الإدخال/الإخراج. Streamlit أكثر للأغراض العامة لتطبيقات البيانات ولوحات المعلومات.
- Streamlit مقابل Flask + الواجهة الأمامية: يمنحك Flask التحكم في كل شيء، بما في ذلك الكثير مما لا تريد التحكم فيه. Streamlit هو الاختصار عندما يكون هدفك هو "تسليم أداة اتخاذ قرار بحلول يوم الثلاثاء".
كلمة سريعة عن Sider.AI: مساعد مفيد للتعلم والبناء
إذا كنت من النوع الذي يحب التكرار بسرعة ورؤية نتائج ملموسة، فإن استخدام مساعد يعمل بالذكاء الاصطناعي جنبًا إلى جنب مع Streamlit يمكن أن يكون قوة خارقة. على سبيل المثال، لقد رأيت عروضًا توضيحية تحول CSV فوضويًا إلى لوحة معلومات نظيفة ومرئية ثم تصديرها إلى Excel—بالضبط نوع تطبيق "لقد وفرت ساعات عمل الفريق" الذي يمكنك تجميعه باستخدام أدوات Streamlit ومساعدة الذكاء الاصطناعي الصغيرة لتلخيص البيانات أو تنظيمها. يمكن لأدوات مثل Sider.AI أيضًا أن تدفعك خلال النماذج الأولية وسيناريوهات الاختبار حتى تتمكن من التركيز على التصميم ومنطق البيانات. مشاريع صغيرة عملية يمكنك سرقتها (مع ملاحظات)
- تطبيق "تقرير الرئيس المفضل"
- المدخلات: تحميل CSV، منتقي نطاق التاريخ، قائمة منسدلة للمنطقة.
- الإخراج: مقاييس (الإيرادات والعدد)، مخطط خطي، وملف Excel قابل للتنزيل.
- نصائح: قم بتخزين خطوة تنظيف البيانات مؤقتًا؛ احفظ DataFrame المصفى في session_state حتى تتمكن من التصدير على الفور.
- "مخطط سيناريو ماذا لو" للمبيعات
- المدخلات: شريط تمرير لنسبة الخصم، وnumber_input للإنفاق الإعلاني، ومربع تحديد لمستوى المنتج.
- الإخراج: مخطط شريطي للإيرادات المتوقعة وملخص نصي ("بخصم 10٪، تسترد في 6.2 أشهر").
- نصائح: استخدم علامات التبويب: "الافتراضات" و"المخططات" و"التنزيلات". حافظ على تخزين وظيفة النموذج مؤقتًا.
- "ملخص ملاحظات مدعوم بالذكاء الاصطناعي"
- المدخلات: file_uploader لملفات PDF أو النصوص، ومربع اختيار للنبرة ("رسمية"، "ودية"، "نمط نقطي").
- الإخراج: نص ملخص مع زر نسخ؛ CSV اختياري لعناصر العمل.
- نصائح: قم بدفق النتائج مع التحديثات المتزايدة؛ اعرض مؤشر دوران واشرح ما يحدث.
- "منظف البيانات ومحول التنسيق"
- المدخلات: file_uploader (CSV)، ومربع اختيار لإزالة المسافات البيضاء، ومربع تحديد لتحليل التاريخ، وزر "تصدير إلى Excel".
- الإخراج: معاينة للجدول النظيف؛ مخطط للقيم الخالية حسب العمود؛ تصدير بنقرة واحدة.
- نصائح: هذا مشروع مثالي للمبتدئين ويتوافق بشكل جيد مع تلك العروض التوضيحية العملية.
كيفية اختيار أفضل دروس Streamlit لك
- إذا كان لديك ساعتان: قم بتدفق البدء الرسمي والبرنامج التعليمي لإنشاء تطبيق. ستحصل على 80٪ من الطريق، 20٪ من الوقت.
- إذا كان لديك عطلة نهاية أسبوع: قم بإقرانها بدورة فيديو قائمة على المشاريع وقم ببناء التطبيق المكون من ثلاث صفحات الذي أوضحته. ستكون "هذا الشخص" في العمل بحلول يوم الاثنين.
- إذا كنت ترغب في التخصص: انغمس في فهرس الدروس للتوثيق وقواعد البيانات وأفضل الممارسات. سوف تتجنب إعادة طلاء نفس السياج خمس مرات.
آداب Streamlit: اجعلها مبهجة لمستخدميك
- استخدم تسميات باللغة الإنجليزية البسيطة.
- احتفظ بالإجراءات الرئيسية فوق الطية.
- استخدم st.expander للخيارات المتقدمة.
- أضف زر "إعادة تعيين عوامل التصفية"؛ يحب الناس فرصة الإعادة.
- قدم عينات بيانات حقيقية صغيرة للاختبار.
زاوية استكشاف الأخطاء وإصلاحها (المعروفة أيضًا باسم "لماذا لا يعمل هذا الشيء؟")
- لا توجد وحدة باسم 'streamlit': أنت في البيئة الخاطئة. pip install streamlit في venv النشط الخاص بك.
- يقبل أداة تحميل الملفات لا شيء: تحقق من أنواع ملفاتك؛ تذكر أيضًا أن الأدوات ذات حالة فقط إذا قمت بتخزين النتائج في session_state.
- إنه يعمل محليًا ولكن ليس في النشر: قم بتثبيت إصداراتك وإعداد الأسرار/متغيرات البيئة في المضيف. اختبر أيضًا بمجموعة بيانات صغيرة.
- إنه بطيء مع ملفات CSV الكبيرة: استخدم عمليات القراءة المقطوعة أو التجميع المسبق أو العينة لواجهة المستخدم. ضع في اعتبارك التخزين المؤقت وتفريغ التحويلات الثقيلة.
شيء أخير: تواضع أداة عظيمة
يكمن عبقرية Streamlit في تواضع طموحه. لا تحاول أن تكون منصة كاملة؛ تحاول أن تكون المقبض الذي يحول Python الخاص بك إلى تطبيق سهل الاستخدام. مع أفضل دروس Streamlit المذكورة أعلاه—الوثائق الرسمية للأساسيات ومقاطع الفيديو الخاصة بالمشاريع للحصول على الزخم ومحادثات حول أفضل الممارسات للتلميع—ستتخطى التجول وتصل إلى الجزء الذي يقول فيه الناس، "انتظر، لقد بنيت هذا؟"
وهذه هي اللحظة التي تعيش من أجلها. أو على الأقل، اللحظة التي يتوقف فيها رئيسك في العمل عن مطالبتك بإرسال 11 نسخة من نفس جدول البيانات.
الأسئلة الشائعة
س1: ما هي أفضل دروس Streamlit للمبتدئين تمامًا؟
ابدأ بدليل البدء الرسمي والبرنامج التعليمي لإنشاء تطبيق—فهي حديثة وموجزة ومضمونة للعمل مع أحدث إصدار من Streamlit. ستقوم ببناء تطبيق صغير مع مخططات وأدوات في أقل من ساعتين.
س2: كيف أختار بين Streamlit مقابل Dash للوحة المعلومات الخاصة بي؟
اختر Streamlit عندما تحتاج إلى السرعة والبساطة للأدوات الداخلية أو النماذج الأولية السريعة؛ اختر Dash عندما تحتاج إلى تخصيص أعمق وسير عمل مؤسسي. جرب نموذجًا أوليًا في نهاية الأسبوع في Streamlit أولاً—غالبًا ما يغطي 90٪ من الاحتياجات.
س3: ما هو أسرع طريق إلى تطبيق Streamlit جاهز للإنتاج؟
اتبع الدروس الرسمية، ثم انتقل إلى دورة قائمة على المشاريع ومحادثة حول أفضل الممارسات للحصول على نصائح حول الهيكل والأداء. قم بتخزين الوظائف الثقيلة مؤقتًا، واستخدم session_state، وقم بتثبيت إصدارات الحزمة الخاصة بك للحفاظ على استقرار عمليات النشر.
س4: هل يمكن لـ Streamlit التعامل مع ميزات الذكاء الاصطناعي مثل النسخ أو التلخيص؟
نعم—يتعامل Streamlit بشكل جيد مع مكتبات وواجهات برمجة تطبيقات الذكاء الاصطناعي في Python. استخدم تجولًا إرشاديًا للمشروع مثبتًا (مثل تطبيق النسخ بالذكاء الاصطناعي) لتعلم أنماط تحميلات الملفات ومؤشرات التقدم والوظائف طويلة الأمد.
س5: أين يمكنني العثور على أفكار تطبيقات Streamlit واقعية للتدرب عليها؟
جرب تطبيقات الأدوات: تنظيف البيانات وتحويلها، ومخططي ماذا لو، والملخصات السريعة المدعومة بالذكاء الاصطناعي. تعد الأمثلة الواقعية التي تحول CSV إلى Excel وتصور البيانات النظيفة ممارسة رائعة ومفيدة على الفور.