إذا كنت تتعلم البرمجة أو تعمل على تطوير تطبيقات الذكاء الاصطناعي، فمن المحتمل أنك سمعت كثيراً عن GitHub. لكن GitHub ليس مجرد مكان لتحميل الأكواد، بل هو بيئة ضخمة يشارك فيها المطورون المكتبات والأطر البرمجية والأدوات التعليمية والتطبيقات والمشاريع التجريبية والحلول التي يمكن استخدامها كنقطة انطلاق لبناء مشاريع حقيقية.
المشكلة أن العدد الهائل من المستودعات يجعل العثور على المشاريع المفيدة أمراً صعباً. قد تبحث عن أداة للـLLM فتجد مئات النتائج، أو تريد تعلم RAG فتجد عشرات المشاريع، أو تبحث عن إطار لبناء AI Agents ولا تعرف أي مشروع يستحق وقتك.
لهذا جمعنا في هذا الدليل 50 مستودع GitHub تغطي مجموعة واسعة من احتياجات المبرمجين ومهندسي الذكاء الاصطناعي، ابتداءً من تشغيل النماذج محلياً، مروراً بـLLM وRAG وAI Agents، ووصولاً إلى الأتمتة، التعلم، هندسة الأنظمة، المقابلات التقنية، الأدوات المساعدة والمراجع البرمجية.
القائمة ليست ترتيباً من الأفضل إلى الأسوأ، ولا تعني أن كل مشروع مناسب لكل شخص. الهدف هو إعطاؤك خريطة عملية تساعدك على اكتشاف المشاريع المناسبة حسب مستواك وهدفك.
📚 فهرس المقال
🚀 لماذا GitHub مهم جداً للمبرمجين ومهندسي الذكاء الاصطناعي؟
أحد أهم أسباب أهمية GitHub هو أنه يضع الكود الحقيقي أمام المتعلم. بدلاً من الاكتفاء بمشاهدة دورة تشرح مفهوم API أو قاعدة بيانات أو نموذج ذكاء اصطناعي، يمكنك الانتقال إلى مشروع حقيقي، قراءة الملفات، مشاهدة طريقة تنظيم الكود، متابعة الإصدارات، وقراءة المشاكل التي واجهها المطورون.
بالنسبة لمهندس الذكاء الاصطناعي، تصبح هذه الفائدة أكبر لأن المجال يتغير بسرعة. تقنيات مثل LLM وRAG وAgents وMCP والنماذج المحلية تتطور باستمرار، ولذلك فإن قراءة المشاريع الحالية تساعدك على فهم كيفية تحويل الأفكار النظرية إلى أنظمة عملية.
ماذا يمكنك أن تتعلم من مستودع واحد؟
- طريقة تنظيم مشروع برمجي كبير.
- طريقة كتابة README ووثائق الاستخدام.
- إدارة الاعتماديات البرمجية.
- استخدام APIs والمكتبات الخارجية.
- اختبارات البرمجيات.
- إدارة الإصدارات باستخدام Git.
- تصميم التطبيقات التي تعتمد على الذكاء الاصطناعي.
- طريقة بناء workflows وagents.
- التعامل مع النماذج والبيانات.
- كيفية تحويل فكرة بسيطة إلى مشروع قابل للتوسع.
🔎 كيف تختار مستودع GitHub جيداً؟
وجود عدد كبير من النجوم أو الـForks قد يكون مؤشراً مفيداً على انتشار المشروع، لكنه ليس دليلاً كافياً وحده. المشروع المناسب لك هو المشروع الذي يتوافق مع هدفك ومستواك، وتتوفر له وثائق واضحة، وإصدارات حديثة، ومجتمع أو نشاط تطوير مناسب.
1. اقرأ README أولاً
ملف README غالباً هو أول مكان يجب أن تبدأ منه. ابحث عن وصف المشروع، طريقة التثبيت، المتطلبات، أمثلة الاستخدام، الترخيص، وروابط الوثائق.
2. راقب آخر التحديثات
المشروع الذي يتم تحديثه باستمرار قد يكون أكثر ملاءمة للتقنيات الحديثة، لكن لا يعني ذلك أن المشروع القديم عديم القيمة. بعض المشاريع التعليمية والمكتبات المستقرة قد لا تحتاج إلى تحديثات يومية.
3. تحقق من الترخيص
الترخيص يحدد ما يمكنك فعله بالكود. بعض المشاريع تستخدم MIT أو Apache-2.0، بينما توجد مشاريع أخرى تستخدم تراخيص بشروط إضافية. لذلك لا تفترض أن كل ما تجده على GitHub يمكن استخدامه تجارياً بالطريقة نفسها.
4. اقرأ Issues وDiscussions
هذه الصفحات تساعدك على معرفة المشاكل التي يواجهها المستخدمون، والأسئلة المتكررة، والنقاشات حول الميزات والتوافق والأخطاء.
5. لا تخلط بين "مشروع مفتوح المصدر" و"خدمة مجانية"
وجود الكود على GitHub لا يعني بالضرورة أن الخدمة السحابية المرتبطة به مجانية. وقد يكون المشروع متاحاً للتشغيل الذاتي، بينما بعض الخدمات المدارة أو الميزات التجارية لها شروط مختلفة.
🤖 القسم الأول: مستودعات الذكاء الاصطناعي وLLM
هذه المجموعة مناسبة لمن يريد فهم وتشغيل وبناء تطبيقات تعتمد على النماذج اللغوية الكبيرة، سواء على جهاز محلي أو من خلال بيئات تطوير تعتمد على APIs أو أدوات RAG.
1 Ollama
Ollama من أشهر المشاريع التي تجعل تجربة تشغيل نماذج اللغة محلياً أسهل. الفكرة الأساسية هي توفير طريقة مبسطة للحصول على النماذج وتشغيلها والتفاعل معها من خلال بيئة محلية.
هذا يجعله مفيداً للمتعلمين الذين يريدون فهم فكرة النماذج المحلية، وللمطورين الذين يريدون تجربة تطبيقات LLM دون بناء كل البنية التحتية من الصفر.
مفيد لـ: LLM، النماذج المحلية، التجارب، تطوير تطبيقات الذكاء الاصطناعي.
2 Open WebUI
github.com/open-webui/open-webui
واجهة ويب مفتوحة المصدر مصممة للتفاعل مع نماذج الذكاء الاصطناعي، وتستطيع العمل مع بيئات النماذج المحلية والخدمات المتوافقة.
قيمته التعليمية أنه يوضح كيف يمكن بناء واجهة استخدام حول نماذج اللغة وإدارة المحادثات والملفات وبعض الوظائف المرتبطة بها.
مفيد لـ: واجهات LLM، النماذج المحلية، التجارب التعليمية.
3 Hugging Face Transformers
github.com/huggingface/transformers
يُعد Transformers من أهم المكتبات في منظومة تعلم الآلة الحديثة، خصوصاً للتعامل مع نماذج اللغة والرؤية والصوت وغيرها من مهام الذكاء الاصطناعي.
إذا كنت تريد الانتقال من مجرد استخدام الذكاء الاصطناعي إلى فهم كيفية التعامل برمجياً مع النماذج، فهذا المشروع يمثل نقطة مهمة في رحلتك.
مفيد لـ: Machine Learning، NLP، LLM، Vision، التدريب والاستدلال.
4 vLLM
مشروع يركز على تشغيل وخدمة نماذج اللغة بكفاءة، خصوصاً عندما تحتاج التطبيقات إلى التعامل مع عدد كبير من الطلبات.
من المفيد دراسته لفهم الجانب الذي يأتي بعد تدريب النموذج: كيف يتم تقديمه كتطبيق أو API وكيف يمكن تحسين استخدام موارد الحوسبة.
مفيد لـ: inference، serving، LLM infrastructure.
5 llama.cpp
مشروع شهير لتشغيل نماذج LLM وVLM بكفاءة باستخدام C/C++. يركز على الاستدلال محلياً وعلى مجموعة واسعة من الأجهزة.
كما يوفر أدوات وخوادم وواجهات يمكن استخدامها لبناء تطبيقات تعتمد على النماذج المحلية. وتوضح الوثائق الحالية إمكانية تشغيل النماذج وإطلاق خادم متوافق مع واجهات API معينة.
مفيد لـ: C/C++، LLM inference، النماذج المحلية.
6 LlamaIndex
github.com/run-llama/llama_index
إطار يساعد المطورين على ربط تطبيقات LLM بالبيانات والمصادر الخارجية، وهو مفيد بشكل خاص في تطبيقات RAG واسترجاع المعلومات.
بدلاً من جعل النموذج يعتمد فقط على المعلومات الموجودة في أوزانه، يمكن بناء طبقة تسمح له بالتعامل مع بيانات خاصة أو مستندات أو مصادر أخرى.
مفيد لـ: RAG، البيانات، LLM applications.
7 RAGFlow
منصة تركز على بناء أنظمة Retrieval-Augmented Generation. وهي مفيدة لمن يريد الانتقال من مفهوم RAG النظري إلى بناء نظام يتعامل مع المستندات والاسترجاع والإجابة.
يمكن دراسة المشروع لفهم المكونات التي تدخل في تطبيقات المعرفة المعتمدة على المستندات.
مفيد لـ: RAG، المستندات، المعرفة الخاصة.
8 nanoGPT
مشروع تعليمي شهير يهدف إلى تقديم تطبيق صغير نسبياً لفكرة تدريب نموذج GPT. قيمته الأساسية ليست في كونه منصة إنتاج ضخمة، بل في بساطته التعليمية.
إذا كنت تريد فهم البنية الأساسية للنماذج اللغوية، فقد يكون من المفيد قراءة الكود ومحاولة فهم مراحل التدريب والبيانات والتقييم.
مفيد لـ: تعلم أساسيات Transformers وGPT.
9 ComfyUI
github.com/comfyanonymous/ComfyUI
واجهة تعتمد على نظام العقد Nodes لبناء workflows خاصة بالذكاء الاصطناعي التوليدي، وخصوصاً في مجال الصور والنماذج التوليدية.
الميزة التعليمية هنا هي رؤية طريقة تقسيم عملية توليد المحتوى إلى مراحل مترابطة بدلاً من التعامل مع البرنامج كصندوق أسود.
مفيد لـ: Generative AI، الصور، workflows.
10 DeepSeek
حساب ومجموعة مشاريع مرتبطة بأبحاث ونماذج DeepSeek. يمكن للمطورين والباحثين استخدام المستودعات الرسمية للتعرف على النماذج والأبحاث والأدوات التي ينشرها الفريق.
من المهم عند مقارنة النماذج الاعتماد على الاختبارات والتوثيق الحديث بدلاً من إطلاق أحكام عامة مثل "الأفضل" أو "يتفوق دائماً".
مفيد لـ: LLM، الأبحاث، النماذج المفتوحة.
11 LobeChat
مشروع لبناء واجهة حديثة لتطبيقات المحادثة بالذكاء الاصطناعي، مع دعم مجموعة من النماذج والخدمات والوظائف المختلفة.
يمكن أن يكون مفيداً لدراسة تصميم واجهات AI الحديثة، خصوصاً إذا كنت مهتماً ببناء تطبيق يشبه أدوات المحادثة المعروفة.
مفيد لـ: AI UI، LLM applications، الواجهات.
12 MarkItDown
github.com/microsoft/markitdown
أداة لتحويل أنواع مختلفة من المحتوى والملفات إلى Markdown، وهي فكرة مفيدة جداً في أنظمة الذكاء الاصطناعي التي تحتاج إلى تجهيز البيانات قبل إدخالها إلى نموذج أو نظام RAG.
فهم مرحلة تجهيز البيانات مهم بقدر أهمية اختيار النموذج، لأن جودة البيانات وطريقة تنظيمها تؤثر على جودة النظام النهائي.
مفيد لـ: Document processing، Markdown، AI pipelines.
🧠 القسم الثاني: AI Agents والأتمتة وبناء workflows
تنتقل هذه المجموعة من فكرة "نموذج يجيب عن سؤال" إلى فكرة "نظام يستطيع تنفيذ سلسلة من الخطوات". هنا تظهر مفاهيم مثل الأدوات Tools، الذاكرة، الاستدعاء، التخطيط، workflows والوكلاء Agents.
13 LangChain
github.com/langchain-ai/langchain
LangChain إطار لبناء تطبيقات تعتمد على LLM وAI Agents، ويوفر مكونات وتكاملات تساعد المطور على ربط النماذج بالأدوات والبيانات والخدمات.
الوثائق الحالية تصفه كمنصة لهندسة الوكلاء وتطبيقات LLM، مع منظومة تشمل LangGraph وDeep Agents وغيرها.
مفيد لـ: LLM Apps، Agents، RAG، الأدوات.
14 n8n
n8n منصة لأتمتة workflows تربط بين التطبيقات والخدمات، وتحتوي أيضاً على إمكانات مرتبطة بالذكاء الاصطناعي.
من المهم تصحيح نقطة شائعة: n8n يصف مشروعه حالياً بأنه Fair-code، وتستخدم أجزاء البرنامج Sustainable Use License وEnterprise License، لذلك لا ينبغي وصفه ببساطة بأنه مشروع Open Source تقليدي دون توضيح الترخيص.
مفيد لـ: Automation، APIs، workflows، AI automation.
15 Dify
منصة لبناء تطبيقات الذكاء الاصطناعي وRAG وAgentic Workflows. هدفها تقليل كمية الكود اللازمة لبناء تطبيق AI كامل، مع توفير أدوات للتجربة والإدارة والنشر.
النسخة الحالية من المشروع تصفه كمنصة لبناء Agentic workflows وRAG pipelines مع دعم نماذج وأدوات متعددة وإمكانية التشغيل الذاتي.
مفيد لـ: RAG، Agents، AI apps، Low-code.
16 Langflow
github.com/langflow-ai/langflow
Langflow منصة مرئية لبناء ونشر تطبيقات الذكاء الاصطناعي والـworkflows. يمكن للمطور ربط المكونات بصرياً، ثم استخدام الكود لتخصيص المكونات عند الحاجة.
المشروع الحالي يدعم بناء agents وworkflows ويوفر إمكانات API وMCP، ما يجعله مناسباً للتجارب السريعة والتعلم.
مفيد لـ: Visual AI، Agents، Workflows.
17 CrewAI
إطار لبناء أنظمة تعتمد على مجموعة من AI Agents، حيث يمكن إعطاء كل Agent دوراً ومهمة وأدوات، ثم تنسيق عملهم ضمن عملية واحدة.
الفكرة مهمة تعليمياً لأنها تساعد على فهم الفرق بين chatbot بسيط ونظام متعدد الوكلاء.
مفيد لـ: Multi-agent systems، automation، AI workflows.
18 MetaGPT
github.com/FoundationAgents/MetaGPT
مشروع بحثي وبرمجي حول الأنظمة متعددة الوكلاء التي تتعاون لإنجاز مهام برمجية أو تحليلية.
يمكن أن يكون مفيداً لفهم فكرة توزيع الأدوار بين عدة Agents بدلاً من جعل نموذج واحد يقوم بكل شيء.
مفيد لـ: Multi-agent، Software Engineering Agents.
19 Microsoft AutoGen
مشروع يركز على بناء تطبيقات متعددة الوكلاء وتنسيق المحادثات والمهام بين agents والأنظمة البرمجية.
يستحق الدراسة خصوصاً لمن يريد فهم بنية الأنظمة التي تستخدم أكثر من Agent في عملية واحدة.
مفيد لـ: AI Agents، orchestration، experimentation.
20 Aider
أداة برمجية تعمل من خلال الطرفية وتساعد المطور على العمل مع مستودعات الكود باستخدام نماذج الذكاء الاصطناعي.
قيمتها التعليمية أنها توضح كيف يمكن دمج LLM مباشرة داخل دورة تطوير البرمجيات، مع المحافظة على المشروع والكود كبيئة عمل أساسية.
مفيد لـ: AI coding، Git، terminal workflows.
21 browser-use
github.com/browser-use/browser-use
مشروع يركز على تمكين وكلاء الذكاء الاصطناعي من التفاعل مع المتصفح لتنفيذ خطوات ضمن صفحات الويب.
من خلاله يمكن دراسة التحديات المرتبطة بجعل Agent يتعامل مع واجهة رسومية حقيقية بدلاً من API منظمة.
مفيد لـ: Browser Agents، automation، AI agents.
22 Mem0
مشروع يركز على طبقة الذاكرة في تطبيقات الذكاء الاصطناعي. الفكرة هي مساعدة التطبيقات على حفظ واسترجاع معلومات مفيدة عبر التفاعلات بدلاً من الاعتماد فقط على سياق المحادثة الحالية.
دراسة هذا النوع من المشاريع مفيدة لفهم مفهوم memory في AI agents.
مفيد لـ: Agent memory، LLM applications.
23 OpenClaw
مشروع حديث ضمن منظومة الأدوات الخاصة بالمساعدات والوكلاء القادرين على التعامل مع مهام وأدوات متعددة.
عند دراسة أي Agent حديث، من المهم فهم الصلاحيات التي يحصل عليها، الأدوات التي يستعملها، والبيانات التي يستطيع الوصول إليها، بدلاً من افتراض أن التشغيل المحلي يعني تلقائياً خصوصية كاملة.
مفيد لـ: AI agents، automation، experimentation.
24 Supermemory
github.com/supermemoryai/supermemory
مشروع يركز على الذاكرة والسياق في تطبيقات الذكاء الاصطناعي، وهي من المجالات المهمة عند بناء مساعدات طويلة المدى.
فكرة الذاكرة لا تعني تخزين كل شيء بلا حدود؛ بل تتعلق بكيفية اختيار المعلومات المهمة وتنظيمها واسترجاعها عند الحاجة.
مفيد لـ: Memory، context، AI assistants.
25 Awesome Claude Skills
github.com/ComposioHQ/awesome-claude-skills
قائمة تجمع مهارات وأفكاراً وأمثلة يمكن أن تساعد في فهم كيفية توسيع قدرات المساعدات البرمجية والوكلاء.
القوائم من نوع Awesome مفيدة لأنها تعمل كفهرس، لكن يجب دائماً قراءة المشروع الأصلي قبل الاعتماد على أي أداة.
مفيد لـ: AI assistants، skills، automation.
26 Microsoft Semantic Kernel
github.com/microsoft/semantic-kernel
إطار لتطوير تطبيقات الذكاء الاصطناعي وربط النماذج بالأدوات والوظائف والذاكرة والخدمات البرمجية.
يمكن دراسته لفهم كيفية بناء طبقة orchestration بين نموذج اللغة والكود التقليدي.
مفيد لـ: AI orchestration، Agents، .NET، Python.
27 LangGraph
github.com/langchain-ai/langgraph
LangGraph يركز على بناء أنظمة Agents باستخدام مفهوم الرسوم البيانية والتحكم في حالات سير العمل.
وهو مفيد عندما تصبح العمليات أكثر تعقيداً وتحتاج إلى التحكم في الخطوات والحالات والتفرعات بدلاً من سلسلة بسيطة من التعليمات.
مفيد لـ: Agent orchestration، workflows، stateful AI.
28 Pydantic AI
github.com/pydantic/pydantic-ai
إطار Python لبناء تطبيقات تعتمد على Agents وLLMs مع التركيز على الأنواع والتحقق من البيانات وبناء مخرجات منظمة.
هذا النوع من الأدوات مهم لأن تطبيقات الذكاء الاصطناعي العملية لا تحتاج فقط إلى نص جيد، بل تحتاج أيضاً إلى مخرجات يمكن للبرامج الأخرى فهمها والتحقق منها.
مفيد لـ: Python، Agents، structured output، AI applications.
📚 القسم الثالث: مستودعات التعلم وتطوير البرمجيات
إذا كنت في بداية طريق البرمجة أو تريد بناء أساس قوي، فهذه المجموعة قد تكون أهم من عشرات أدوات الذكاء الاصطناعي. السبب بسيط: الأدوات تتغير، لكن أساسيات البرمجة والخوارزميات وهندسة البرمجيات تبقى ضرورية.
29 freeCodeCamp
github.com/freeCodeCamp/freeCodeCamp
مشروع تعليمي ضخم يقدم محتوى تفاعلياً لتعلم البرمجة وتطوير الويب ومجالات تقنية متعددة.
المهم هنا ليس عدد الملفات أو النجوم، بل إمكانية استخدامه كبيئة تدريب عملية بدلاً من مشاهدة الدروس فقط.
مفيد لـ: المبتدئين، Web Development، JavaScript.
30 Developer Roadmap
github.com/kamranahmedse/developer-roadmap
مجموعة خرائط طريق تساعد المتعلم على فهم المهارات والمفاهيم التي تدخل في مسارات مثل Frontend وBackend وDevOps والذكاء الاصطناعي وغيرها.
الميزة الأساسية هي تنظيم الطريق؛ لأن المشكلة بالنسبة للمبتدئ ليست دائماً نقص المصادر، بل كثرتها.
مفيد لـ: التخطيط للتعلم، اختيار المسار.
31 Build Your Own X
github.com/codecrafters-io/build-your-own-x
قائمة تعليمية تجمع مشاريع تساعدك على بناء نسخ مبسطة من تقنيات وأنظمة مختلفة.
الفكرة ممتازة للتعلم بالممارسة: بدلاً من معرفة اسم Redis أو نظام تشغيل أو مترجم فقط، تحاول فهم المكونات الأساسية التي تقف خلف الفكرة.
مفيد لـ: التعلم بالمشاريع، الأنظمة، البرمجة العميقة.
32 Free Programming Books
github.com/EbookFoundation/free-programming-books
مستودع يجمع روابط لمصادر وكتب برمجية متاحة بشكل قانوني ومجاني.
يمكن استعماله كفهرس للبحث عن مراجع حسب لغة البرمجة أو المجال، مع ضرورة التأكد من شروط الوصول لكل مصدر.
مفيد لـ: الكتب والمراجع البرمجية.
33 System Design Primer
github.com/donnemartin/system-design-primer
مرجع كبير لمفاهيم System Design مثل قواعد البيانات والتخزين المؤقت والتوسع والتوافر وتصميم الخدمات.
يصبح هذا المجال مهماً عندما تنتقل من كتابة برنامج صغير إلى التفكير في أنظمة يستخدمها عدد كبير من الأشخاص.
مفيد لـ: System Design، Backend، المقابلات التقنية.
34 Coding Interview University
github.com/jwasham/coding-interview-university
خطة دراسية واسعة تغطي علوم الحاسوب والخوارزميات وهياكل البيانات ومواضيع مرتبطة بالمقابلات التقنية.
يمكن استخدامها كخريطة مراجعة، لكن من الأفضل تعديلها حسب الوقت والهدف بدلاً من محاولة دراسة كل شيء دفعة واحدة.
مفيد لـ: Data Structures، Algorithms، Computer Science.
35 Project Based Learning
github.com/practical-tutorials/project-based-learning
قائمة تجمع مصادر تعليمية تعتمد على بناء المشاريع.
هذه الطريقة مفيدة لأنك تتعلم اللغة أو الإطار البرمجي أثناء حل مشكلة حقيقية، بدلاً من حفظ الأوامر بشكل منفصل عن التطبيق.
مفيد لـ: التعلم العملي، المشاريع، البرمجة.
36 Tech Interview Handbook
github.com/yangshun/tech-interview-handbook
مرجع يساعد المطورين على مراجعة مجموعة من المواضيع المرتبطة بالمقابلات التقنية، مع التركيز على التحضير المنظم.
حتى إذا لم تكن تستعد لمقابلة، يمكنك استخدامه لاكتشاف المواضيع التي تحتاج إلى تقوية معرفتك بها.
مفيد لـ: Interview Prep، Algorithms، Web Development.
37 JavaScript Algorithms
github.com/trekhleb/javascript-algorithms
مجموعة تطبيقات للخوارزميات وهياكل البيانات باستخدام JavaScript.
مناسب لمن يريد ربط المفاهيم النظرية بالكود، خصوصاً في بداية دراسة الخوارزميات.
مفيد لـ: JavaScript، Algorithms، Data Structures.
38 You Don't Know JS
github.com/getify/You-Dont-Know-JS
سلسلة تعليمية معروفة تركز على فهم JavaScript بعمق، وليس فقط تعلم الصياغة الأساسية للغة.
مفيدة خصوصاً عندما تبدأ بمواجهة مفاهيم مثل scope وclosures وobjects وasynchronous JavaScript.
مفيد لـ: JavaScript، Frontend، فهم اللغة بعمق.
🛠️ القسم الرابع: الأدوات والمراجع والمشاريع المساعدة
39 Public APIs
github.com/public-apis/public-apis
قائمة منظمة لمجموعة كبيرة من APIs يمكن للمطورين استخدامها للتجارب والمشاريع، مع تصنيف حسب المجالات.
يمكن أن تكون مفيدة عندما تحتاج إلى مصدر بيانات أو خدمة خارجية أثناء بناء مشروع تدريبي.
مفيد لـ: APIs، المشاريع التجريبية، تعلم التكاملات.
40 Awesome Selfhosted
github.com/awesome-selfhosted/awesome-selfhosted
قائمة واسعة من البرامج التي يمكن تشغيلها واستضافتها ذاتياً، في مجالات مختلفة مثل إدارة الملفات والمراقبة والإنتاجية وغيرها.
المشروع مفيد للتعرف على عالم self-hosting واكتشاف البدائل البرمجية التي يمكن تشغيلها على بنية تحتية تملكها أو تديرها.
مفيد لـ: Self-hosting، Linux، DevOps.
41 The Art of Command Line
github.com/jlevy/the-art-of-command-line
مرجع يساعد على تعلم واكتشاف مجموعة واسعة من مفاهيم وأدوات سطر الأوامر.
إتقان الطرفية من المهارات المهمة للمطورين، خصوصاً عند التعامل مع الخوادم وGit والبيئات البرمجية.
مفيد لـ: Linux، Terminal، DevOps.
42 The Book of Secret Knowledge
github.com/trimstray/the-book-of-secret-knowledge
مجموعة مرجعية كبيرة تضم ملاحظات وأدوات ومصادر تقنية متنوعة، خصوصاً حول الأنظمة والشبكات وسطر الأوامر.
يجب التعامل مع أي محتوى تقني أمني بمسؤولية واستخدامه في التعلم والإدارة والدفاع ضمن الأنظمة المصرح بها فقط.
مفيد لـ: Linux، Networking، المراجع التقنية.
43 30 Seconds of Code
github.com/Chalarangelo/30-seconds-of-code
مجموعة من الأمثلة البرمجية القصيرة والمفيدة، خصوصاً في JavaScript وTypeScript ومفاهيم البرمجة العامة.
مفيدة عندما تريد رؤية حلول صغيرة لمهام متكررة بدلاً من البحث في كل مرة من الصفر.
مفيد لـ: JavaScript، TypeScript، snippets.
44 Gitignore Templates
مجموعة من ملفات .gitignore الجاهزة لمختلف لغات البرمجة والأدوات والبيئات.
قد يبدو المشروع بسيطاً، لكنه يعلمك أهمية عدم رفع الملفات المؤقتة أو الملفات الحساسة أو ملفات البناء إلى مستودع Git.
مفيد لـ: Git، GitHub، تنظيم المشاريع.
45 Maigret
أداة ضمن مجال OSINT للبحث عن أسماء مستخدمين عبر خدمات ومواقع مختلفة.
يمكن أن تكون مفيدة في أبحاث المصادر المفتوحة المشروعة، لكن يجب احترام الخصوصية وعدم استخدامها للتتبع أو المضايقة أو جمع معلومات شخصية عن أشخاص دون مبرر مشروع.
مفيد لـ: OSINT، البحث المفتوح، دراسة الأدوات.
46 Stagehand
github.com/browserbase/stagehand
مشروع يركز على أتمتة المتصفح ودمج قدرات الذكاء الاصطناعي مع عمليات التصفح والاختبار.
يمكن أن يكون مفيداً لفهم العلاقة بين browser automation وAI agents، خصوصاً عند بناء تطبيقات تحتاج إلى التفاعل مع صفحات الويب.
مفيد لـ: Browser Automation، AI Agents، Testing.
47 Firecrawl
github.com/mendableai/firecrawl
مشروع يركز على استخراج محتوى الويب وتحويله إلى صيغ مناسبة لاستخدامها في تطبيقات الذكاء الاصطناعي.
هذه الفكرة مهمة جداً في RAG لأن النظام يحتاج إلى بيانات منظمة وقابلة للمعالجة قبل أن تصبح مفيدة للنموذج.
مفيد لـ: Web data، RAG، AI pipelines.
48 Pytest
Pytest إطار مشهور لاختبار مشاريع Python.
إضافة الاختبارات إلى مشروع الذكاء الاصطناعي مهمة جداً لأن التطبيقات المعتمدة على النماذج قد تحتوي على أجزاء كثيرة قابلة للكسر عند تحديث الكود أو المكتبات.
مفيد لـ: Python، Testing، Software Engineering.
49 uv
uv أداة حديثة لإدارة بيئات واعتماديات مشاريع Python، وتستهدف جعل عمليات إنشاء البيئات وتثبيت الحزم وإدارة المشاريع أسرع وأسهل.
فهم أدوات إدارة البيئة مهم خصوصاً في مشاريع الذكاء الاصطناعي، لأن هذه المشاريع غالباً تعتمد على عدد كبير من المكتبات.
مفيد لـ: Python، environments، dependencies.
50 Docker
Docker Compose يساعد على تعريف وتشغيل مجموعة من الخدمات المرتبطة ببعضها باستخدام ملفات إعداد منظمة.
هذه المهارة مفيدة جداً عند تجربة مشاريع الذكاء الاصطناعي التي تتكون من أكثر من خدمة، مثل تطبيق وقاعدة بيانات ومحرك بحث أو خدمة نموذج.
مفيد لـ: Docker، DevOps، AI infrastructure.
📊 كيف تختلف هذه المستودعات عن بعضها؟
| الفئة | أمثلة | ماذا تتعلم؟ | المستوى المناسب |
|---|---|---|---|
| LLM | Transformers، llama.cpp، Ollama | النماذج والاستدلال والتكامل | متوسط وما فوق |
| RAG | LlamaIndex، RAGFlow، Dify | ربط النماذج بالبيانات | مبتدئ إلى متقدم |
| AI Agents | LangChain، LangGraph، CrewAI | الأدوات والوكلاء والـorchestration | متوسط وما فوق |
| Automation | n8n، Stagehand | ربط الخدمات وأتمتة العمليات | مبتدئ إلى متوسط |
| التعلم | freeCodeCamp، Roadmap | الأساسيات والمسارات | مبتدئ |
| Algorithms | JS Algorithms، Coding Interview University | الخوارزميات وهياكل البيانات | مبتدئ إلى متقدم |
| DevOps | Docker، Awesome Selfhosted | التشغيل والبنية التحتية | متوسط وما فوق |
🗺️ كيف تستفيد من 50 مستودعاً بدون أن تضيع؟
أكبر خطأ يمكن أن يقع فيه المبتدئ هو فتح عشرات المستودعات والانتقال بينها دون بناء أي مشروع. كثرة المصادر لا تعني سرعة التعلم. في الواقع، قد تؤدي كثرة الخيارات إلى فقدان التركيز.
الأفضل هو اختيار مسار واحد، ثم اختيار عدد صغير من المستودعات التي تخدم ذلك المسار.
🟢 المسار الأول: إذا كنت مبتدئاً في البرمجة
ابدأ بالأساسيات قبل الدخول في AI Agents أو RAG. يمكنك البدء بمسار تعليمي مثل freeCodeCamp، ثم استخدام Developer Roadmap لفهم المهارات التي تحتاجها.
بعد ذلك، اختر لغة برمجة واحدة. إذا كنت مهتماً بالذكاء الاصطناعي، فإن Python خيار عملي جداً، بينما JavaScript أو TypeScript مفيدان جداً في تطوير الويب.
بعد تعلم الأساسيات، انتقل إلى المشاريع الصغيرة. لا تحاول بناء نموذج ذكاء اصطناعي ضخم في البداية. مشروع بسيط مثل API صغيرة أو تطبيق CRUD أو أداة لمعالجة ملف يمكن أن يعلمك الكثير.
🔵 المسار الثاني: إذا كان هدفك AI Developer
بعد أساسيات Python، يمكنك البدء بفهم APIs والبيانات ثم الانتقال إلى LLM applications.
مسار مقترح:
- Python.
- Git وGitHub.
- APIs وJSON.
- أساسيات قواعد البيانات.
- مفاهيم LLM.
- Transformers.
- تطبيق بسيط باستخدام LLM.
- RAG.
- Agents.
- اختبارات ونشر التطبيق.
في هذه المرحلة يمكن أن تصبح مستودعات مثل Transformers وLlamaIndex وLangChain وLangGraph أكثر فائدة.
🟣 المسار الثالث: تعلم RAG
RAG أو Retrieval-Augmented Generation هو أسلوب يجعل تطبيق الذكاء الاصطناعي يسترجع معلومات من مصادر خارجية قبل صياغة الإجابة.
مثلاً، تخيل أنك تريد إنشاء مساعد يجيب عن محتوى مجموعة من ملفات PDF. بدلاً من مطالبة النموذج بحفظ كل الملفات داخله، يتم تجهيز الملفات وتقسيمها وفهرستها، ثم البحث عن الأجزاء ذات الصلة بالسؤال وإرسالها إلى النموذج ضمن السياق.
للتعلم، يمكنك دراسة LlamaIndex أو RAGFlow أو Dify، ثم محاولة بناء مشروع صغير خاص بك.
يمكن أن يكون المشروع عبارة عن مساعد يجيب عن مجموعة من الوثائق التعليمية التي تملك حق استخدامها. الهدف هنا ليس إنشاء منتج ضخم، بل فهم دورة البيانات من الملف إلى البحث ثم إلى النموذج ثم إلى الإجابة.
🟠 المسار الرابع: تعلم AI Agents
Agent يختلف عن chatbot بسيط في أن النظام قد يستطيع اختيار أدوات أو تنفيذ خطوات متعددة بناءً على المهمة.
مثلاً، بدلاً من أن تسأل النموذج "ما هو سعر منتج؟" وتكتب الإجابة بنفسك، يمكن نظرياً بناء نظام يستقبل المهمة، يستدعي أداة مناسبة للحصول على البيانات، يعالج النتيجة، ثم يعيدها بتنسيق مفهوم.
عند دراسة Agents، ركز على مفاهيم مثل:
- Tools.
- State.
- Memory.
- Planning.
- Structured Output.
- Orchestration.
- Evaluation.
- Error Handling.
يمكنك بعد ذلك الانتقال إلى LangGraph أو CrewAI أو Semantic Kernel أو Pydantic AI حسب اللغة والأسلوب الذي تفضله.
💡 الفرق بين استخدام مشروع جاهز وبناء مشروع من الصفر
وجود مستودع جاهز لا يعني أنك يجب أن تستخدمه كما هو. هناك ثلاث طرق مختلفة للاستفادة من GitHub.
1. استخدام المشروع
تستخدم الأداة كما هي لتحقيق هدف محدد. هذه أسرع طريقة، لكنها لا تعلمك بالضرورة كيف تعمل الأداة من الداخل.
2. قراءة الكود
هنا تبدأ القيمة التعليمية الحقيقية. يمكنك اختيار ملف صغير ومحاولة فهمه، ثم الانتقال إلى الملفات المرتبطة به.
3. بناء نسخة تعليمية مبسطة
هذه من أقوى طرق التعلم. إذا وجدت مشروعاً معقداً لبناء Agent، لا تحاول نسخ المشروع كله. حاول بناء نسخة صغيرة جداً من الفكرة.
مثلاً، إذا كان النظام الكامل يستخدم عدة Agents وأدوات وقواعد بيانات، ابدأ بـAgent واحد وأداة واحدة. بعد فهم الفكرة، أضف المكونات تدريجياً.
🧩 كيف تقرأ مستودع GitHub بطريقة احترافية؟
عندما تدخل مستودعاً لأول مرة، لا تبدأ بفتح الملفات عشوائياً. اتبع ترتيباً بسيطاً.
- اقرأ وصف المشروع.
- اقرأ README.
- راجع الوثائق.
- شاهد بنية المجلدات.
- ابحث عن أمثلة الاستخدام.
- تعرف على لغة البرمجة المستخدمة.
- راجع ملف الترخيص.
- شاهد الإصدارات Releases.
- اقرأ بعض Issues الحديثة.
- بعد ذلك فقط ابدأ قراءة الكود.
بهذه الطريقة ستفهم الصورة العامة قبل الدخول في التفاصيل.
🔐 الترخيص والخصوصية والأمان
من الأخطاء الشائعة اعتبار كل مشروع موجود على GitHub آمناً أو مناسباً للاستخدام التجاري. GitHub منصة استضافة للكود، وليست شهادة ضمان لكل مشروع.
قبل تشغيل أي مشروع، راجع الوثائق والترخيص والمصدر، وخصوصاً إذا كان المشروع سيصل إلى ملفاتك أو حساباتك أو مفاتيح API أو قواعد بيانات.
وفي مشاريع الذكاء الاصطناعي، انتبه أيضاً إلى البيانات التي ترسلها إلى النماذج أو الخدمات الخارجية. التشغيل المحلي قد يقلل بعض أنواع الاعتماد على الخدمات السحابية، لكنه لا يعني تلقائياً أن كل مكون في النظام يعمل محلياً أو أن الخصوصية مضمونة في جميع الحالات.
⚙️ لماذا يجب أن تتعلم Git وليس GitHub فقط؟
Git هو نظام التحكم في الإصدارات، بينما GitHub هو منصة تستضيف مستودعات Git وتوفر خدمات إضافية للتعاون والمراجعة وإدارة المشاريع.
المبرمج الذي يتعلم Git يستطيع إنشاء فروع، تسجيل التغييرات، مقارنة الإصدارات، العودة إلى نسخة سابقة، ودمج التعديلات. هذه مهارات أساسية في المشاريع الحقيقية.
لهذا لا تجعل هدفك مجرد "تحميل المشاريع من GitHub". حاول أن تتعلم كيف تقرأ المشروع، تعدل نسخة محلية منه، تنشئ فرعاً، تختبر التغيير، ثم تفهم طريقة المساهمة فيه.
📈 كيف تحول هذه المستودعات إلى Portfolio قوي؟
إذا كنت تتعلم بهدف العمل مستقبلاً، فإن مجرد قول "أعرف LangChain" أو "أعرف Python" لا يوضح كثيراً ما تستطيع فعله.
المشروع العملي أكثر وضوحاً.
مثلاً، بدلاً من كتابة:
أتعلم الذكاء الاصطناعي.
يمكنك بناء مشروع بسيط موثق يوضح:
- المشكلة التي يحلها.
- التقنيات المستخدمة.
- طريقة تشغيل المشروع.
- صورة أو فيديو للنتيجة.
- التحديات التي واجهتها.
- ما الذي تعلمته.
- ما الذي يمكن تحسينه مستقبلاً.
حتى المشروع الصغير يمكن أن يكون مفيداً إذا كان منظماً ومشروحاً جيداً.
🏗️ مثال على خطة مشروع تدريجي
يمكنك إنشاء مشروع تعليمي من أربع مراحل:
| المرحلة | المشروع | المهارات |
|---|---|---|
| 1 | برنامج Python بسيط | Python وGit |
| 2 | تطبيق يستخدم API | HTTP وJSON وAPIs |
| 3 | مساعد يعتمد على مستندات | RAG وEmbeddings |
| 4 | Agent يستخدم أدوات | Agents وTools وOrchestration |
بهذه الطريقة يصبح كل مشروع امتداداً للمشروع السابق، بدلاً من البدء كل مرة من الصفر.
🧠 هل تحتاج إلى تعلم كل هذه الأدوات؟
لا.
وهذه ربما أهم فكرة في المقال كله.
لا يوجد مطور محترف يحتاج إلى معرفة كل إطار وكل مكتبة وكل مستودع على GitHub. المجال كبير جداً، وحتى المطورون المتخصصون يستخدمون أدوات مختلفة حسب المشروع.
الأفضل هو تعلم المفاهيم الأساسية أولاً، ثم اختيار الأدوات التي تخدمك.
مثلاً، إذا كان هدفك بناء تطبيق RAG، لا تحتاج إلى تعلم خمس مكتبات RAG في الوقت نفسه. اختر واحدة، افهم المفهوم، أنشئ مشروعاً، ثم قارن لاحقاً مع البدائل.
🎯 5 طرق للاستفادة من القائمة
الطريقة الأولى: التعلم
اختر مستودعاً تعليمياً، واقرأه لمدة 30 إلى 60 دقيقة يومياً، وسجل الملاحظات التي تتعلمها.
الطريقة الثانية: بناء المشاريع
اختر أداة واحدة وابنِ مشروعاً صغيراً حولها. لا تجعل المشروع معقداً في البداية.
الطريقة الثالثة: دراسة الكود
اختر ملفاً واحداً من مشروع كبير وحاول فهمه. ابحث عن الدوال والكلاسات التي لا تعرفها.
الطريقة الرابعة: مقارنة الأدوات
بعد بناء مشروع باستخدام أداة واحدة، جرّب أداة بديلة لترى الفرق في طريقة التفكير والبنية البرمجية.
الطريقة الخامسة: المساهمة
بعد اكتساب بعض الخبرة، يمكنك قراءة Issues أو تحسين التوثيق أو إصلاح أخطاء بسيطة في المشاريع التي تسمح بذلك.
🚦 من أين تبدأ حسب هدفك؟
| هدفك | ابدأ بـ | ثم انتقل إلى |
|---|---|---|
| تعلم البرمجة | freeCodeCamp | Roadmap + مشاريع |
| تعلم Python | مشاريع صغيرة | Pytest + uv |
| تعلم LLM | Transformers | Ollama + llama.cpp |
| تعلم RAG | LlamaIndex | RAGFlow أو Dify |
| تعلم Agents | LangChain | LangGraph أو CrewAI |
| الأتمتة | n8n | Browser Automation |
| System Design | System Design Primer | مشاريع Backend |
| Algorithms | JavaScript Algorithms | Coding Interview University |
| DevOps | Command Line | Docker + Self-hosting |
📱 وهل يمكن دراسة GitHub من الهاتف؟
يمكنك قراءة README والوثائق وتصفح الكود من الهاتف، والاطلاع على Issues وReleases والتعرف على المشاريع. لكن تشغيل الكثير من مشاريع الذكاء الاصطناعي يحتاج عادةً إلى بيئة تطوير مناسبة وموارد حوسبة، وقد يكون الكمبيوتر أكثر عملية من الهاتف.
لذلك يمكن استخدام الهاتف للبحث والتعلم وقراءة الوثائق، ثم الانتقال إلى بيئة تطوير مناسبة عندما يصبح المشروع بحاجة إلى تشغيل فعلي.
💰 هل كل هذه المشاريع مجانية؟
وجود المشروع على GitHub لا يعني بالضرورة أن كل الخدمات المرتبطة به مجانية.
هناك فرق بين:
- الكود المتاح على GitHub.
- الخدمة السحابية.
- API مدفوعة.
- ميزات Enterprise.
- تكلفة الخوادم والحوسبة.
- تكلفة النماذج أو التخزين أو قواعد البيانات.
لذلك اقرأ الترخيص وصفحة الأسعار والوثائق الرسمية قبل بناء مشروع تجاري يعتمد على خدمة معينة.
📌 نقطة مهمة حول النجوم Stars
قد ترى مستودعاً لديه عشرات الآلاف أو مئات الآلاف من النجوم، لكن لا تجعل الرقم هو معيارك الوحيد.
النجوم قد تعكس الشعبية، لكنها لا تخبرك وحدها إن كان المشروع مناسباً لمستواك أو لمشكلتك. أحياناً يكون مشروع صغير جداً هو الحل المناسب لمشكلة محددة، بينما مشروع ضخم قد يكون غير ضروري لمشروعك.
لهذا اجمع بين:
- الهدف.
- الوثائق.
- نشاط المشروع.
- الترخيص.
- سهولة الاستخدام.
- المجتمع.
- توافقه مع تقنياتك.
🔄 ماذا تفعل إذا كان المشروع قديماً؟
لا يعني توقف التحديثات أن المشروع سيئ. بعض المشاريع تصل إلى مرحلة من الاستقرار ولا تحتاج إلى تغييرات يومية.
لكن إذا كان المشروع يعتمد على تقنية تتغير بسرعة، مثل بعض أدوات الذكاء الاصطناعي، فمن المهم التأكد من أن الوثائق والإصدارات متوافقة مع الإصدارات الحالية للنماذج والمكتبات التي ستستخدمها.
إذا وجدت شرحاً قديماً على الإنترنت، ارجع دائماً إلى المستودع الرسمي والوثائق الحالية.
🧪 لا تتعلم الذكاء الاصطناعي بالنسخ واللصق فقط
أدوات الذكاء الاصطناعي جعلت الحصول على كود جاهز أسهل من أي وقت مضى، لكن هذا لا يعني أن نسخ الكود هو نفسه تعلم البرمجة.
عندما تحصل على مثال جاهز، حاول أن تسأل:
- لماذا استخدم المطور هذه المكتبة؟
- ماذا يحدث إذا حذفت هذا السطر؟
- ما نوع البيانات الداخلة؟
- ما الذي يخرج من الدالة؟
- أين يحدث الخطأ إذا تغيرت البيانات؟
- هل يمكن تنفيذ الفكرة بدون هذه المكتبة؟
هذه الأسئلة تحول الذكاء الاصطناعي من مجرد أداة لكتابة الكود إلى أداة للتعلم.
🌐 لماذا تعتبر GitHub مكتبة معرفة وليست فقط منصة كود؟
عند النظر إلى GitHub بهذه الطريقة، ستكتشف أن المستودعات تمثل أشكالاً مختلفة من المعرفة:
- كود حقيقي.
- توثيق.
- أمثلة.
- اختبارات.
- نقاشات.
- إصدارات.
- تاريخ التطوير.
- مشاكل واقعية وحلولها.
ولهذا فإن تعلم قراءة GitHub مهارة مستقلة تقريباً. الشخص الذي يعرف كيف يبحث ويقرأ ويفهم المستودعات يستطيع الوصول إلى معرفة عملية كثيرة دون الاعتماد دائماً على دورة تعليمية واحدة.
🧭 خطة عملية لمدة 30 يوماً
| الأيام | المهمة |
|---|---|
| 1 - 5 | تعلم أساسيات Git وGitHub |
| 6 - 10 | اختيار لغة برمجة وبناء مشروع صغير |
| 11 - 15 | قراءة مستودع حقيقي وتحليل بنيته |
| 16 - 20 | بناء تطبيق يستخدم API |
| 21 - 25 | تجربة مشروع LLM أو RAG |
| 26 - 28 | إضافة الاختبارات وتحسين README |
| 29 - 30 | رفع المشروع وتنظيم Portfolio |
بعد 30 يوماً لن تصبح خبيراً في كل هذه التقنيات، وهذا ليس الهدف. الهدف هو اكتساب طريقة تفكير تمكنك من فتح مشروع جديد وفهمه تدريجياً.
🏆 كيف تختار أول 3 مستودعات فقط؟
إذا كانت القائمة الطويلة تبدو مربكة، استخدم قاعدة بسيطة:
مستودع للتعلم + مستودع للأداة + مستودع للمشروع.
مثلاً:
- للتعلم: Developer Roadmap.
- للأداة: LangChain أو LlamaIndex.
- للمشروع: مشروع صغير تبنيه أنت اعتماداً على ما تعلمته.
بعد الانتهاء، أضف مستودعاً جديداً. بهذه الطريقة تتحول القائمة من 50 رابطاً ضخماً إلى خطة تعلم تدريجية.
⚠️ أخطاء يجب تجنبها عند استخدام GitHub
- تحميل وتشغيل أي مشروع دون قراءة README.
- تجاهل الترخيص.
- وضع API keys داخل الكود.
- الاعتماد على مشروع قديم دون التحقق من توافقه.
- نسخ كود لا تفهمه ثم استخدامه في مشروع مهم.
- الاعتماد على عدد النجوم فقط.
- محاولة تعلم عشرات الأدوات في الوقت نفسه.
- الاعتقاد أن تشغيل المشروع محلياً يعني تلقائياً أن كل البيانات محلية.
✨ الخلاصة
GitHub واحد من أهم الأماكن التي يمكن للمبرمج ومهندس الذكاء الاصطناعي استخدامها للتعلم واكتشاف الأدوات ومتابعة المشاريع الحديثة. لكن القيمة الحقيقية لا تأتي من جمع أكبر عدد ممكن من الروابط، بل من معرفة كيف تختار المشروع المناسب وكيف تقرأه وكيف تحوله إلى تجربة عملية.
القائمة التي استعرضناها تجمع 50 مستودعاً في مجالات مختلفة: تشغيل نماذج الذكاء الاصطناعي، LLM، RAG، AI Agents، الأتمتة، Python، JavaScript، الخوارزميات، System Design، DevOps، الاختبارات وإدارة المشاريع.
إذا كنت مبتدئاً، فلا تبدأ بالخمسين. اختر مستودعاً تعليمياً واحداً. وإذا كنت مطوراً وتريد دخول مجال الذكاء الاصطناعي، اختر تقنية واحدة مثل LLM أو RAG أو Agents، ثم ابنِ مشروعاً صغيراً حولها.
ومع مرور الوقت ستلاحظ أن أهم مهارة ليست حفظ أسماء الأدوات، بل القدرة على قراءة الوثائق، فهم الكود، اختبار الأفكار، اكتشاف المشاكل، واختيار التقنية المناسبة للمشكلة.
📌 احفظ هذا المقال وارجع إليه كلما احتجت إلى اكتشاف مشروع جديد على GitHub.
