mirror of
https://github.com/EbookFoundation/free-programming-books.git
synced 2025-08-06 16:06:32 +02:00
Add RTL/LTR Markdown linter for mixed-direction text consistency and PR annotation (#11877)
* Add RTL/LTR Markdown linter for mixed-direction text consistency and PR annotation Introduce a Python-based linter (scripts/rtl_ltr_linter.py) to automatically detect and annotate issues related to mixed Right-To-Left (RTL) and Left-To-Right (LTR) text in Markdown files. The linter analyzes list items, book entries, and metadata for potential bidirectional text rendering problems, such as missing Unicode directionality markers (RLM/LRM) and improper handling of LTR keywords or symbols in RTL contexts. Key features: - Scans all Markdown files in the repository, with full logs saved as workflow artifacts. - Annotates only changed or added lines in pull requests, providing targeted feedback in the GitHub Actions Job Summary. - Detects common RTL/LTR issues, including: - Missing directionality markers after LTR keywords (e.g., "HTML") or symbols (e.g., "C#") in RTL text. - BIDI (bidirectional) mismatches that may affect text display. - Incorrect ordering of author names and metadata in RTL contexts. - Configurable via rtl_linter_config.yml for keywords, symbols, and severity levels. - Includes a GitHub Actions workflow (rtl-ltr-linter.yml) for automated checks on PRs. * Add test cases for RTL/LTR linter in English and Arabic book lists Add sample entries to free-programming-books-en.md and free-programming-books-ar.md to test the RTL/LTR Markdown linter. These test cases include various combinations of RTL and LTR text, keywords, symbols, and metadata to verify that the linter correctly detects directionality issues and outputs the expected logs and annotations. * Restore original book lists after RTL/LTR linter test cases Revert test entries in free-programming-books-en.md and free-programming-books-ar.md, restoring the original book lists. This commit removes temporary test data used for validating the RTL/LTR Markdown linter, preparing the repository for merging the PR with a clean state. No functional changes to the linter or configuration files; only test content has been removed. * Update RTL/LTR linter workflow and script: run only on RTL file changes or "RTL" label, fail only on errors The GitHub Actions workflow for the RTL/LTR Markdown linter now runs only if: - The PR modifies .md files related to RTL languages (ar, he, fa, ur), or - The PR has the "RTL" label. The linter script has been updated to fail the check only if errors are found on changed lines, not for warnings. * Only upload linter artifact if linter step runs Prevent warning about missing artifact by uploading the linter output log only if the linter step was executed (success or failure). This avoids unnecessary warnings when the linter is skipped because no RTL files were changed and no RTL label is present. * Test workflow: modify non-RTL markdown file Modified free-programming-books-en.md to verify that the RTL/LTR linter workflow does not run when only non-RTL markdown files are changed and the "RTL" label is not present. * Test workflow: modify RTL markdown file to trigger linter Modified free-programming-books-ar.md to verify that the RTL/LTR linter workflow runs as expected when an RTL markdown file is changed. * Fix RTL/LTR BIDI issues in some markdown files Applied directional markers (‎, ‏) and other formatting fixes to resolve BIDI (bidirectional text) errors and warnings reported by the linter in several .md files. * Fix workflow: upload linter log only if linter step has not been skipped Updated the workflow to upload the linter output artifact only when the linter step was actually executed (not skipped) * Add debug step to check linter outcome in workflow Added a debug step after the linter execution in the workflow to print the outcome and conclusion of the run_linter step. * Set continue-on-error for linter step to allow artifact upload and debug * Remove workflow debug step and update markdown file Removed the debug step from the RTL/LTR linter workflow and applied further changes to a markdown file. * Fix RTL/LTR BIDI issues in some markdown files Applied directional markers (‎, ‏) and other formatting fixes to resolve BIDI (bidirectional text) errors and warnings reported by the linter in several .md files. This commit is a second batch of corrections to improve RTL/LTR rendering and pass the linter checks. * Fix RTL/LTR BIDI issues in some markdown files Applied directional markers (‎, ‏) and other formatting fixes to resolve BIDI (bidirectional text) errors and warnings reported by the linter in several .md files. This commit is a third batch of corrections to improve RTL/LTR rendering and pass the linter checks. * Do not produce log file if no issues found Updated the linter script to avoid creating the log file when no issues, warnings, or notices are found. If no issues are detected, the script now prints a "::notice ::No issues found" * Always print annotation with number of errors and warnings found Updated the linter script to always print an annotation indicating how many errors and warnings were found, even if there are none. * Fix: always print summary annotation with number of issues found * Add a missing newline character at end of file free-courses-he.md * Update linter configuration and revert markdown files to pre-fix state Updated the organization of keywords and symbols in the linter configuration file. Reverted all markdown files to their original state prior to the fixes. * Update free-programming-books-he.md with fixes * Update free-programming-books-he.md with further fixes * Update free-programming-books-he.md with fixes * Update free-programming-books-fa_IR.md with fixes * Update free-programming-books-he.md with further fixes * Update free-programming-books-ar.md with fixes * Update free-programming-books-ar.md with further fixes * Update free-podcasts-screencasts-ar.md with fixes * Update free-podcasts-screencasts-fa_IR.md with fixes * Update free-courses-he.md with fixes * Update free-courses-he.md with further fixes * Update free-courses-fa_IR.md with fixes * Update free-courses-fa_IR.md with further fixes * Update free-courses-ar.md with fixes * Update free-courses-ar.md with further fixes * Update free-courses-ar.md with further fixes * Update free-courses-ur.md with fixes * Update some markdown files with further improvements * Fix alignment of nested lists in free-programming-books-fa_IR.md * Update CONTRIBUTING.md and CONTRIBUTING-it.md with RTL/LTR linter error fixing guidelines Added a section to CONTRIBUTING.md and CONTRIBUTING-it.md explaining how to fix RTL/LTR Markdown linter errors, including when to use ‏ and ‎ with practical examples for contributors working on files with mixed RTL and LTR text
This commit is contained in:
committed by
GitHub
parent
1be7c48c60
commit
caa05be694
101
.github/workflows/rtl-ltr-linter.yml
vendored
Normal file
101
.github/workflows/rtl-ltr-linter.yml
vendored
Normal file
@@ -0,0 +1,101 @@
|
||||
name: RTL/LTR Markdown Linter
|
||||
|
||||
on: [pull_request]
|
||||
|
||||
permissions:
|
||||
contents: read # Required to checkout the repository content
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
# Checkout the repository code
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
|
||||
# Fetch the full history of 'main' for accurate git diff in PRs
|
||||
- name: Fetch all history for main
|
||||
run: git fetch --no-tags --prune --depth=50 origin main
|
||||
|
||||
# Set up the required Python version for the linter
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11' # Use a recent Python version for compatibility
|
||||
|
||||
# Install only the Python dependencies needed for the linter script
|
||||
- name: Install Python dependencies
|
||||
run: |
|
||||
pip install python-bidi PyYAML
|
||||
|
||||
# (Optional) List files for debugging purposes
|
||||
- name: List files in scripts directory and current path
|
||||
run: |
|
||||
echo "Current working directory:"
|
||||
pwd
|
||||
echo "Listing contents of scripts directory (if it exists at root):"
|
||||
ls -la scripts/ || echo "scripts/ directory not found at root or ls failed"
|
||||
|
||||
# Identify all changed Markdown files in the PR using tj-actions/changed-files
|
||||
- name: Get changed Markdown files
|
||||
id: changed_md_files
|
||||
uses: tj-actions/changed-files@v44
|
||||
with:
|
||||
files: |
|
||||
**/*.md
|
||||
|
||||
# Check if the PR has the "RTL" label
|
||||
- name: Check for RTL label
|
||||
id: rtl_label
|
||||
run: |
|
||||
gh pr view ${{ github.event.pull_request.number }} --json labels --jq '.labels[].name' | grep -q '^RTL$' && echo "has_labels=true" >> $GITHUB_OUTPUT || echo "has_labels=false" >> $GITHUB_OUTPUT
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
|
||||
# Check if any changed file is in ar, he, fa, ur
|
||||
- name: Check for RTL language file changes
|
||||
id: rtl_lang_files
|
||||
run: |
|
||||
RTL_CHANGED=false
|
||||
for f in ${{ steps.changed_md_files.outputs.all_changed_files }}; do
|
||||
if [[ "$f" =~ (ar|he|fa|ur) ]]; then
|
||||
RTL_CHANGED=true
|
||||
break
|
||||
fi
|
||||
done
|
||||
echo "rtl_changed=$RTL_CHANGED" >> $GITHUB_OUTPUT
|
||||
|
||||
# Run the RTL/LTR Markdown linter:
|
||||
# - Scans all Markdown files for issues and writes a full log
|
||||
# - Prints GitHub Actions annotations only for issues on changed lines in changed files
|
||||
# - Fails the job if any error or warning is found on changed lines
|
||||
- name: Run RTL/LTR Markdown linter
|
||||
id: run_linter
|
||||
if: steps.rtl_label.outputs.has_labels == 'true' || steps.rtl_lang_files.outputs.rtl_changed == 'true'
|
||||
continue-on-error: true
|
||||
run: |
|
||||
echo "Scanning all specified paths for full log..."
|
||||
echo "Changed Markdown files for PR annotations: ${{ steps.changed_md_files.outputs.all_changed_files }}"
|
||||
|
||||
CHANGED_FILES_ARGS=""
|
||||
if [ "${{ steps.changed_md_files.outputs.all_changed_files_count }}" -gt 0 ]; then
|
||||
# Pass changed files to the script for PR annotation generation
|
||||
CHANGED_FILES_ARGS="--changed-files ${{ steps.changed_md_files.outputs.all_changed_files }}"
|
||||
fi
|
||||
|
||||
# Execute the linter.
|
||||
# Annotations for changed files will be printed to stdout by the script.
|
||||
# The script will also write a full log to 'rtl-linter-output.log'.
|
||||
# If the script exits with a non-zero code (error found), this step will fail.
|
||||
python3 scripts/rtl_ltr_linter.py books casts courses more ${CHANGED_FILES_ARGS} --log-file rtl-linter-output.log
|
||||
|
||||
# Upload the linter output log as a workflow artifact
|
||||
# Only if the linter step was executed (success or failure)
|
||||
- name: Upload linter output artifact
|
||||
if: steps.run_linter.conclusion == 'success' || steps.run_linter.conclusion == 'failure'
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: rtl-linter-output # Name of the artifact
|
||||
path: rtl-linter-output.log # Path to the output file
|
||||
if-no-files-found: ignore # Ignore if no files are found
|
@@ -24,7 +24,7 @@
|
||||
|
||||
* [احترف الأردوينو](https://www.ev-center.com/uploads/2/1/2/6/21261678/arduino.pdf) - Working Group‏ (PDF)
|
||||
* [اردوينو ببساطة](https://simplyarduino.com/%D9%83%D8%AA%D8%A7%D8%A8-%D8%A7%D8%B1%D8%AF%D9%88%D9%8A%D9%86%D9%88-%D8%A8%D8%A8%D8%B3%D8%A7%D8%B7%D8%A9/) - عبدالله علي عبدالله, Abdallah Ali Abdallah Elmasry‏ (PDF)
|
||||
* [AVR ببساطة: من تشغيل دايود ضوئي إلى أنظمة الوقت الحقيقي](https://github.com/abdallah-ali-abdallah/Simply-AVR-Book) - عبدالله علي عبدالله, Abdallah Ali Abdallah Elmasry‏ (ODT, PDF)
|
||||
* [AVR‏ ببساطة: من تشغيل دايود ضوئي إلى أنظمة الوقت الحقيقي](https://github.com/abdallah-ali-abdallah/Simply-AVR-Book) - عبدالله علي عبدالله, Abdallah Ali Abdallah Elmasry‏ (ODT, PDF‏)
|
||||
|
||||
|
||||
### Artificial Intelligence
|
||||
@@ -34,7 +34,7 @@
|
||||
|
||||
### DB & DBMS
|
||||
|
||||
* [تصميم قواعد البيانات](https://academy.hsoub.com/files/26-تصميم-قواعد-البيانات/) - Adrienne Watt, Nelson Eng، ترجمة أيمن طارق وعلا عباس (PDF)
|
||||
* [تصميم قواعد البيانات](https://academy.hsoub.com/files/26-تصميم-قواعد-البيانات/) - Adrienne Watt, Nelson Eng‏، ترجمة أيمن طارق وعلا عباس‏ (PDF)
|
||||
|
||||
|
||||
### HTML and CSS
|
||||
@@ -50,31 +50,31 @@
|
||||
|
||||
### JavaScript
|
||||
|
||||
* [تعلم JavaScript‏](https://itwadi.com/node/3002) - Cody Lindley, عبداللطيف ايمش (PDF)
|
||||
* [سلسلة تعلم Next.js بالعربية](https://blog.abdelhadi.org/learn-nextjs-in-arabic/) - Flavio Copes, عبدالهادي الأندلسي
|
||||
* [تعلم JavaScript‏](https://itwadi.com/node/3002) - Cody Lindley,‏ عبداللطيف ايمش‏ (PDF)
|
||||
* [سلسلة تعلم Next.js‏ بالعربية](https://blog.abdelhadi.org/learn-nextjs-in-arabic/) - Flavio Copes,‏ عبدالهادي الأندلسي
|
||||
|
||||
|
||||
#### Vue.js
|
||||
|
||||
* [أساسيات إطار العمل Vue.js](https://academy.hsoub.com/files/22-أساسيات-إطار-العمل-vuejs/) - حسام برهان (PDF)
|
||||
* [أساسيات إطار العمل Vue.js‏](https://academy.hsoub.com/files/22-أساسيات-إطار-العمل-vuejs/) - حسام برهان‏ (PDF)
|
||||
|
||||
|
||||
### Linux
|
||||
|
||||
* [أوبنتو ببساطة](https://www.simplyubuntu.com) - Ahmed AbouZaid‏ (PDF)
|
||||
* [دفتر مدير دبيان](https://ar.debian-handbook.info) - Raphaël Hertzog, Roland Mas, MUHAMMET SAİT Muhammet Sait‏ (PDF, HTML)
|
||||
* [دليل إدارة خواديم أوبنتو 14.04](https://academy.hsoub.com/files/10-دليل-إدارة-خواديم-أوبنتو/) - Ubuntu documentation team, Abdullatif Eymash‏ (PDF)
|
||||
* [سطر أوامر لينكس](https://itwadi.com/node/2765) - Willam E. Shotts Jr., ترجمة عبد اللطيف ايمش (PDF)
|
||||
* [دفتر مدير دبيان](https://ar.debian-handbook.info) - Raphaël Hertzog, Roland Mas, MUHAMMET SAİT Muhammet Sait‏ (PDF, HTML‏)
|
||||
* [دليل إدارة خواديم أوبنتو 14.04‏](https://academy.hsoub.com/files/10-دليل-إدارة-خواديم-أوبنتو/) - Ubuntu documentation team, Abdullatif Eymash‏ (PDF)
|
||||
* [سطر أوامر لينكس](https://itwadi.com/node/2765) - Willam E. Shotts Jr.‎, ترجمة عبد اللطيف ايمش‏ (PDF)
|
||||
|
||||
|
||||
### Open Source Software
|
||||
|
||||
* [دليل البرمجيات الحرة مفتوحة](https://www.freeopensourceguide.com) - أحمد م. أبوزيد (PDF)
|
||||
* [دليل البرمجيات الحرة مفتوحة](https://www.freeopensourceguide.com) - أحمد م. أبوزيد‏ (PDF)
|
||||
|
||||
|
||||
### Operating Systems
|
||||
|
||||
* [أنظمة التشغيل للمبرمجين](https://academy.hsoub.com/files/24-أنظمة-التشغيل-للمبرمجين/) - Allen B. Downey ,ترجمة علا عباس (PDF)
|
||||
* [أنظمة التشغيل للمبرمجين](https://academy.hsoub.com/files/24-أنظمة-التشغيل-للمبرمجين/) - Allen B. Downey,‏ ترجمة علا عباس‏ (PDF)
|
||||
|
||||
|
||||
### Python
|
||||
@@ -100,12 +100,12 @@
|
||||
|
||||
### SQL
|
||||
|
||||
* [ملاحظات للعاملين بلغة SQL](https://academy.hsoub.com/files/16-%D9%85%D9%84%D8%A7%D8%AD%D8%B8%D8%A7%D8%AA-%D9%84%D9%84%D8%B9%D8%A7%D9%85%D9%84%D9%8A%D9%86-%D8%A8%D9%84%D8%BA%D8%A9-sql/)
|
||||
* [ملاحظات للعاملين بلغة SQL‏](https://academy.hsoub.com/files/16-%D9%85%D9%84%D8%A7%D8%AD%D8%B8%D8%A7%D8%AA-%D9%84%D9%84%D8%B9%D8%A7%D9%85%D9%84%D9%8A%D9%86-%D8%A8%D9%84%D8%BA%D8%A9-sql/)
|
||||
|
||||
|
||||
#### PostgreSQL
|
||||
|
||||
* [الدليل العملي إلى قواعد بيانات PostgreSQL‏](https://academy.hsoub.com/files/18-%D8%A7%D9%84%D8%AF%D9%84%D9%8A%D9%84-%D8%A7%D9%84%D8%B9%D9%85%D9%84%D9%8A-%D8%A5%D9%84%D9%89-%D9%82%D9%88%D8%A7%D8%B9%D8%AF-%D8%A8%D9%8A%D8%A7%D9%86%D8%A7%D8%AA-postgresql/) - Craig Kerstiens، مصطفى عطا العايش (PDF)
|
||||
* [الدليل العملي إلى قواعد بيانات PostgreSQL‏](https://academy.hsoub.com/files/18-%D8%A7%D9%84%D8%AF%D9%84%D9%8A%D9%84-%D8%A7%D9%84%D8%B9%D9%85%D9%84%D9%8A-%D8%A5%D9%84%D9%89-%D9%82%D9%88%D8%A7%D8%B9%D8%AF-%D8%A8%D9%8A%D8%A7%D9%86%D8%A7%D8%AA-postgresql/) - Craig Kerstiens،‏ مصطفى عطا العايش‏ (PDF)
|
||||
* [بوستجريسكل كتاب الوصفات](https://itwadi.com/PostgreSQL_Cookbook) - Chitij Chauhan‏ (PDF)
|
||||
|
||||
|
||||
|
@@ -1,3 +1,5 @@
|
||||
<div dir="rtl" markdown="1">
|
||||
|
||||
### فهرست
|
||||
|
||||
* [رایانش ابری](#%D8%B1%D8%A7%DB%8C%D8%A7%D9%86%D8%B4-%D8%A7%D8%A8%D8%B1%DB%8C)
|
||||
@@ -8,9 +10,13 @@
|
||||
* [LaTeX](#latex)
|
||||
* [Linux](#linux)
|
||||
* [PHP](#php)
|
||||
* [Symfony](#symfony)
|
||||
<ul dir="rtl">
|
||||
<li><a href="#symfony">Symfony</a></li>
|
||||
</ul>
|
||||
* [Python](#python)
|
||||
* [Django](#django)
|
||||
<ul dir="rtl">
|
||||
<li><a href="#django">Django</a></li>
|
||||
</ul>
|
||||
* [R](#r)
|
||||
|
||||
|
||||
@@ -26,14 +32,14 @@
|
||||
|
||||
### مهندسی نرمافزار
|
||||
|
||||
* [الگوهای طراحی](https://holosen.net/what-is-design-pattern/) - Hossein Badrnezhad *(نیاز به ثبت نام دارد)*
|
||||
* [الگوهای طراحی](https://holosen.net/what-is-design-pattern/) - Hossein Badrnezhad‏ *(نیاز به ثبت نام دارد)*
|
||||
* [الگوهای طراحی در برنامهنویسی شیءگرا](https://github.com/khajavi/Practical-Design-Patterns)
|
||||
* [ترجمه آزاد کتاب کد تمیز](https://codetamiz.vercel.app) - Robert C. Martin, et al.
|
||||
* [ترجمه آزاد کتاب کد تمیز](https://codetamiz.vercel.app) - Robert C. Martin, et al.‎
|
||||
|
||||
|
||||
### HTML and CSS
|
||||
|
||||
* [یادگیری پیکربندی با CSS](http://fa.learnlayout.com)
|
||||
* [یادگیری پیکربندی با CSS‏](http://fa.learnlayout.com)
|
||||
|
||||
|
||||
### Java
|
||||
@@ -45,14 +51,14 @@
|
||||
|
||||
### JavaScript
|
||||
|
||||
* [جاوااسکریپت شیوا](http://eloquentjs.ir) - مارین هاوربک, مهران عفتی (HTML)
|
||||
* [جاوااسکریپت شیوا](http://eloquentjs.ir) - مارین هاوربک, مهران عفتی‏ (HTML)
|
||||
* [ریکت جی اس](https://github.com/reactjs/fa.reactjs.org)
|
||||
* [یادگیری اصولی جاوااسکریپت](https://github.com/Mariotek/BetterUnderstandingOfJavascript)
|
||||
|
||||
|
||||
### LaTeX
|
||||
|
||||
* [مقدمهای نه چندان کوتاه بر LaTeX](http://www.ctan.org/tex-archive/info/lshort/persian)
|
||||
* [مقدمهای نه چندان کوتاه بر LaTeX‏](http://www.ctan.org/tex-archive/info/lshort/persian)
|
||||
|
||||
|
||||
### Linux
|
||||
@@ -66,24 +72,27 @@
|
||||
|
||||
#### Symfony
|
||||
|
||||
* [سیمفونی ۵: سریعترین مسیر](https://web.archive.org/web/20210122133755/https://symfony.com/doc/current/the-fast-track/fa/index.html) *(:card_file_box: archived)*
|
||||
* [سیمفونی ۵: سریعترین مسیر‏](https://web.archive.org/web/20210122133755/https://symfony.com/doc/current/the-fast-track/fa/index.html) - *(:card_file_box: archived)*
|
||||
|
||||
|
||||
### Python
|
||||
|
||||
* [پایتون به پارسی](https://python.coderz.ir) - سعید درویش (HTML)
|
||||
* [ترجمه آزاد کتاب Asyncio in Python](https://github.com/ftg-iran/aip-persian)
|
||||
* [پایتون به پارسی](https://python.coderz.ir) - سعید درویش‏ (HTML)
|
||||
* [ترجمه آزاد کتاب Asyncio in Python‏](https://github.com/ftg-iran/aip-persian)
|
||||
|
||||
|
||||
#### Django
|
||||
|
||||
* [ترجمه آزاد کتاب Django Design Patterns and Best Practices](https://github.com/ftg-iran/ddpabp-persian)
|
||||
* [ترجمه آزاد کتاب Django Design Patterns and Best Practices‏](https://github.com/ftg-iran/ddpabp-persian)
|
||||
* [کتاب جنگو برای حرفهایها](https://github.com/mthri/dfp-persian)
|
||||
* [کتاب جنگو برای API](https://github.com/ftg-iran/dfa-persian)
|
||||
* [کتاب جنگو برای API‏](https://github.com/ftg-iran/dfa-persian)
|
||||
|
||||
|
||||
### R
|
||||
|
||||
* [تحلیل شبکههای اجتماعی در R](http://cran.r-project.org/doc/contrib/Raeesi-SNA_in_R_in_Farsi.pdf) (PDF)
|
||||
* [راهنمای زبان R](http://cran.r-project.org/doc/contrib/Mousavi-R-lang_in_Farsi.pdf) (PDF)
|
||||
* [مباحث ویژه در R](http://cran.r-project.org/doc/contrib/Mousavi-R_topics_in_Farsi.pdf) (PDF)
|
||||
* [تحلیل شبکههای اجتماعی در R‏](http://cran.r-project.org/doc/contrib/Raeesi-SNA_in_R_in_Farsi.pdf) (PDF)
|
||||
* [راهنمای زبان R‏](http://cran.r-project.org/doc/contrib/Mousavi-R-lang_in_Farsi.pdf) (PDF)
|
||||
* [مباحث ویژه در R‏](http://cran.r-project.org/doc/contrib/Mousavi-R_topics_in_Farsi.pdf) (PDF)
|
||||
|
||||
|
||||
</div>
|
||||
|
@@ -1,3 +1,5 @@
|
||||
<div dir="rtl" markdown="1">
|
||||
|
||||
### Index
|
||||
|
||||
* [ללא תלות בשפה](#ללא-תלות-בשפה)
|
||||
@@ -5,7 +7,7 @@
|
||||
* [רשתות](#רשתות)
|
||||
* [Assembly](#assembly)
|
||||
* [C](#c)
|
||||
* [C#](#csharp)
|
||||
* [C#‎](#csharp)
|
||||
* [Python](#python)
|
||||
|
||||
|
||||
@@ -13,34 +15,37 @@
|
||||
|
||||
#### מערכות הפעלה
|
||||
|
||||
* [מערכות הפעלה](https://data.cyber.org.il/os/os_book.pdf) – ברק גונן, המרכז לחינוך סייבר (PDF)
|
||||
* [מערכות הפעלה](https://data.cyber.org.il/os/os_book.pdf) – ברק גונן‏, המרכז לחינוך סייבר‏ (PDF)
|
||||
|
||||
|
||||
#### רשתות
|
||||
|
||||
* [רשתות מחשבים](https://data.cyber.org.il/networks/networks.pdf) – עומר רוזנבוים, ברק גונן, שלומי הוד, המרכז לחינוך סייבר (PDF)
|
||||
* [רשתות מחשבים](https://data.cyber.org.il/networks/networks.pdf) – עומר רוזנבוים‏, ברק גונן‏, שלומי הוד‏, המרכז לחינוך סייבר‏ (PDF)
|
||||
|
||||
|
||||
### Assembly
|
||||
|
||||
* [ארגון המחשב ושפת סף](https://data.cyber.org.il/assembly/assembly_book.pdf) – ברק גונן, המרכז לחינוך סייבר (PDF)
|
||||
* [ארגון המחשב ושפת סף](https://data.cyber.org.il/assembly/assembly_book.pdf) – ברק גונן‏, המרכז לחינוך סייבר‏ (PDF)
|
||||
|
||||
|
||||
### C
|
||||
|
||||
* [ספר לימוד שפה עילית (שפת C)](https://moked.education.gov.il/MafmarFiles/C_LangIG_3Version.pdf) - מרק טסליצקי (PDF)
|
||||
* [ספר לימוד שפה עילית (שפת C‎)](https://moked.education.gov.il/MafmarFiles/C_LangIG_3Version.pdf) – מרק טסליצקי‏ (PDF)
|
||||
|
||||
|
||||
### <a id="csharp"></a>C\#
|
||||
### <a id="csharp"></a>C#‎
|
||||
|
||||
* [מבוא לתכנות בסביבת האינטרנט בשפת C#](https://meyda.education.gov.il/files/free%20books/%D7%9E%D7%91%D7%95%D7%90%20%D7%9C%D7%AA%D7%9B%D7%A0%D7%95%D7%AA%20%D7%91%D7%A1%D7%91%D7%99%D7%91%D7%AA%20%D7%94%D7%90%D7%99%D7%A0%D7%98%D7%A8%D7%A0%D7%98%20090216.pdf) – מט״ח (PDF)
|
||||
* [מבוא לתכנות בסביבת האינטרנט בשפת C#‎](https://meyda.education.gov.il/files/free%20books/%D7%9E%D7%91%D7%95%D7%90%20%D7%9C%D7%AA%D7%9B%D7%A0%D7%95%D7%AA%20%D7%91%D7%A1%D7%91%D7%99%D7%91%D7%AA%20%D7%94%D7%90%D7%99%D7%A0%D7%98%D7%A8%D7%A0%D7%98%20090216.pdf) – מט״ח‏ (PDF)
|
||||
|
||||
|
||||
### Deep-Learning
|
||||
|
||||
* [ספר על למידת מכונה ולמידה עמוקה](https://github.com/AvrahamRaviv/Deep-Learning-in-Hebrew) – אברהם רביב ומייק ארליסון
|
||||
* [ספר על למידת מכונה ולמידה עמוקה](https://github.com/AvrahamRaviv/Deep-Learning-in-Hebrew) – אברהם רביב‏ ומייק ארליסון‏
|
||||
|
||||
|
||||
### Python
|
||||
|
||||
* [תכנות בשפת פייתון](https://data.cyber.org.il/python/python_book.pdf) – ברק גונן, המרכז לחינוך סייבר (PDF)
|
||||
* [תכנות בשפת פייתון](https://data.cyber.org.il/python/python_book.pdf) – ברק גונן‏, המרכז לחינוך סייבר‏ (PDF)
|
||||
|
||||
|
||||
</div>
|
||||
|
@@ -1,3 +1,5 @@
|
||||
<div dir="rtl" markdown="1">
|
||||
|
||||
### Index
|
||||
|
||||
* [Miscellaneous](#miscellaneous)
|
||||
@@ -5,16 +7,18 @@
|
||||
|
||||
### Miscellaneous
|
||||
|
||||
* [أخوك الكبير متولي](https://anchor.fm/metwally) - Ahmed Metwally (podcast)
|
||||
* [برمجة ستريم](https://youtube.com/playlist?list=PL0_C_32YKLpx7K88481CY3J21cw85oFCM) - Mohamed Abusrea (podcast)
|
||||
* [بودكاست](https://youtube.com/playlist?list=PLvGNfY-tFUN-mGlfovyGACjPVmkzAsQFJ) - Ghareeb Elshaikh (podcast)
|
||||
* [AskDeveloper Podcast](http://www.askdeveloper.com) - Mohamed Elsherif (podcast)
|
||||
* [Codezilla Codecast - بودكاست البرمجة](https://youtube.com/playlist?list=PLsqPSxnrsWLuE-O3IKIUWy6Hmelz3bMWy) - Islam Hesham (podcast)
|
||||
* [Essam Cafe - قهوة عصام](https://essamcafe.com) - Ahmed Essam (podcast)
|
||||
* [Nakerah Podcast](https://nakerah.net/podcast) - Nakerah Network (podcast)
|
||||
* [null++: بالعربي](https://nullplus.plus) - Mohamed Luay, Ahmad Alfy (podcast)
|
||||
* [Tech Podcast بالعربي](https://anchor.fm/ahmdelemam) - Ahmed Elemam (podcast)
|
||||
* [The Egyptian Guy](https://anchor.fm/refaie) - Mohamed Refaie (podcast)
|
||||
* [The Weekly Noob](https://theweeklynoob.netlify.app) - Nabil Tharwat (podcast)
|
||||
* [Untyped Podcast](https://logaretm.com/untyped/) - Abdelrahman Awad (podcast)
|
||||
* [أخوك الكبير متولي](https://anchor.fm/metwally) - Ahmed Metwally‏ (podcast)
|
||||
* [برمجة ستريم](https://youtube.com/playlist?list=PL0_C_32YKLpx7K88481CY3J21cw85oFCM) - Mohamed Abusrea‏ (podcast)
|
||||
* [بودكاست](https://youtube.com/playlist?list=PLvGNfY-tFUN-mGlfovyGACjPVmkzAsQFJ) - Ghareeb Elshaikh‏ (podcast)
|
||||
* [AskDeveloper Podcast‏](http://www.askdeveloper.com) - Mohamed Elsherif‏ (podcast)
|
||||
* [Codezilla Codecast -‏ بودكاست البرمجة](https://youtube.com/playlist?list=PLsqPSxnrsWLuE-O3IKIUWy6Hmelz3bMWy) - Islam Hesham‏ (podcast)
|
||||
* [Essam Cafe -‏ قهوة عصام](https://essamcafe.com) - Ahmed Essam‏ (podcast)
|
||||
* [Nakerah Podcast‏](https://nakerah.net/podcast) - Nakerah Network‏ (podcast)
|
||||
* [null++:‎ بالعربي](https://nullplus.plus) - Mohamed Luay, Ahmad Alfy‏ (podcast)
|
||||
* [Tech Podcast‏ بالعربي](https://anchor.fm/ahmdelemam) - Ahmed Elemam‏ (podcast)
|
||||
* [The Egyptian Guy‏](https://anchor.fm/refaie) - Mohamed Refaie‏ (podcast)
|
||||
* [The Weekly Noob‏](https://theweeklynoob.netlify.app) - Nabil Tharwat‏ (podcast)
|
||||
* [Untyped Podcast‏](https://logaretm.com/untyped/) - Abdelrahman Awad‏ (podcast)
|
||||
|
||||
|
||||
</div>
|
||||
|
@@ -1,3 +1,5 @@
|
||||
<div dir="rtl" markdown="1">
|
||||
|
||||
### Index
|
||||
|
||||
* [Programming News](#programming-news)
|
||||
@@ -6,15 +8,18 @@
|
||||
|
||||
### Programming News
|
||||
|
||||
* [پادکست کافه برنامه نویس](https://anchor.fm/codemy) - CafeCodemy (podcast)
|
||||
* [پادکست کافه برنامه نویس](https://anchor.fm/codemy) - CafeCodemy‏ (podcast)
|
||||
|
||||
|
||||
### Technology
|
||||
|
||||
* [پارس کلیک](https://anchor.fm/parsclick/) - Amir Azimi (podcast)
|
||||
* [پارس کلیک](https://anchor.fm/parsclick/) - Amir Azimi‏ (podcast)
|
||||
* [رادیو گیک](https://soundcloud.com/jadijadi) (podcast)
|
||||
* [رادیو گیک](https://anchor.fm/radiojadi) - Jadi (podcast)
|
||||
* [رادیو گیک](https://anchor.fm/radiojadi) - Jadi‏ (podcast)
|
||||
* [رادیو گیک](https://www.youtube.com/playlist?list=PL-tKrPVkKKE1peHomci9EH7BmafxdXKGn) (videocast)
|
||||
* [CodeNaline \| کدنالین](https://castbox.fm/channel/id5066732) - Torham (podcast)
|
||||
* [Radio Developer - رادیو دولوپر](https://castbox.fm/channel/id4407294) (podcast)
|
||||
* [Radio Mi \| رادیو میــ](https://www.youtube.com/playlist?list=PLRmRAhVbjeHqrc6Gf5DKu2eRJGkfo9A-Z) - Milad Nouri (videocast)
|
||||
* [CodeNaline \|‏ کدنالین](https://castbox.fm/channel/id5066732) - Torham‏ (podcast)
|
||||
* [Radio Developer -‏ رادیو دولوپر](https://castbox.fm/channel/id4407294) (podcast)
|
||||
* [Radio Mi \|‏ رادیو میــ](https://www.youtube.com/playlist?list=PLRmRAhVbjeHqrc6Gf5DKu2eRJGkfo9A-Z) - Milad Nouri‏ (videocast)
|
||||
|
||||
|
||||
</div>
|
||||
|
@@ -55,555 +55,555 @@
|
||||
|
||||
### Algorithms & Data Structures
|
||||
|
||||
* [سلسة الخوارزميات وحل المشاكل المستوى الاول](https://www.youtube.com/playlist?list=PL3X--QIIK-OEUIwbQU79V76RHelBUQKiz) - Programming Advices
|
||||
* [Algorithms - Full Coures In Arabic‏](https://www.youtube.com/playlist?list=PLwCMLs3sjOY6KH-8c9F-lMWn-r02hyoV_) - Hard-Code
|
||||
* [Algorithms Design & Analysis‏](https://www.youtube.com/playlist?list=PLEBRPBUkZ4maAlTZw3eZFwfwIGXaln0in) - FCI-Career-Build
|
||||
* [C++ Data Structures - تراكيب البيانات](https://www.youtube.com/playlist?list=PL1DUmTEdeA6JlommmGP5wicYLxX5PVCQt) - محمد الدسوقي
|
||||
* [Competitive Programming and Problem Solving](https://www.youtube.com/playlist?list=PLCInYL3l2AagpjRJQp0q8D1D3Uuh1hsVH) - Adel Nasim
|
||||
* [CS Master - Level 1- Algorithms & Data Structures الخوارزميات وهياكل البيانات](https://www.youtube.com/playlist?list=PLL2zWZTDFZzjxarUL23ydiOgibhRipGYC) - KMR Script
|
||||
* [Data structure‏](https://www.youtube.com/playlist?list=PLIxq078xdGdZWUXwumK9lbEn3kKwKLTwx) - Nehal Elsamoly
|
||||
* [Data Structure‏](https://www.youtube.com/playlist?list=PLwCMLs3sjOY4UQq4vXgGPwGLVX1Y5faaS) - Hard-Code
|
||||
* [Data Structure : JavaScript (leetcode problem solving)‏](https://www.youtube.com/playlist?list=PLS-MrzRLZtmdIHJ-Osvv_sJO1Msc4VM_7) - Shadow Coding
|
||||
* [Data Structure C++‎‏](https://www.youtube.com/playlist?list=PLsGJzJ8SQXTcsXRVviurGei0lf_t_I4D8) - Mega Code
|
||||
* [Data Structures and Algorithms‏](https://www.youtube.com/playlist?list=PL0vtyWBHY2NVOtPYuz0rNw6kmuLmVZ780) - Tarek Alabd‏ (:construction: *in process*)
|
||||
* [Data Structures Full Course In Arabic‏](https://www.youtube.com/playlist?list=PLCInYL3l2AajqOUW_2SwjWeMwf4vL4RSp) - Adel Nasim
|
||||
* [grokking-algorithms‏](https://www.youtube.com/playlist?list=PLIxq078xdGdZl38Yx2IhYc_YpKjx7MAXW) - Nehal Elsamoly
|
||||
* [Problem solving (Arabic)‏](https://www.youtube.com/playlist?list=PLYknlDiw2kSwdDhTSDoX7ZoVEle8nbZdk) - Muhammed Afifi
|
||||
* [Problems Solving With C++ Level One‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAyX4CCOP--TR36SfD5g7gru) - Elzero Web School
|
||||
* [Problems Solving With C++ Level Two‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAwgefuRqj8OB5ioMT1eC_EZ) - Elzero Web School‏ (:construction: *in process*)
|
||||
* [Sorting algorithms \| خوارزميات الترتيب](https://www.youtube.com/playlist?list=PLINp1xZ5bPrpmnL0cdk80czipnIqPAzWH) - DevLoopers
|
||||
* [Standard Template Library (STL) Full Tutorial Using C++ In Arabic‏](https://www.youtube.com/playlist?list=PLCInYL3l2AainAE4Xq2kdNGDfG0bys2xp) - Adel Nasim
|
||||
* [سلسة الخوارزميات وحل المشاكل المستوى الاول](https://www.youtube.com/playlist?list=PL3X--QIIK-OEUIwbQU79V76RHelBUQKiz) - Programming Advices‏
|
||||
* [Algorithms - Full Coures In Arabic‏](https://www.youtube.com/playlist?list=PLwCMLs3sjOY6KH-8c9F-lMWn-r02hyoV_) - Hard-Code‏
|
||||
* [Algorithms Design & Analysis‏](https://www.youtube.com/playlist?list=PLEBRPBUkZ4maAlTZw3eZFwfwIGXaln0in) - FCI-Career-Build‏
|
||||
* [C++ Data Structures -‏ تراكيب البيانات](https://www.youtube.com/playlist?list=PL1DUmTEdeA6JlommmGP5wicYLxX5PVCQt) - محمد الدسوقي
|
||||
* [Competitive Programming and Problem Solving‏](https://www.youtube.com/playlist?list=PLCInYL3l2AagpjRJQp0q8D1D3Uuh1hsVH) - Adel Nasim‏
|
||||
* [CS Master - Level 1- Algorithms & Data Structures‏ الخوارزميات وهياكل البيانات](https://www.youtube.com/playlist?list=PLL2zWZTDFZzjxarUL23ydiOgibhRipGYC) - KMR Script‏
|
||||
* [Data structure‏](https://www.youtube.com/playlist?list=PLIxq078xdGdZWUXwumK9lbEn3kKwKLTwx) - Nehal Elsamoly‏
|
||||
* [Data Structure‏](https://www.youtube.com/playlist?list=PLwCMLs3sjOY4UQq4vXgGPwGLVX1Y5faaS) - Hard-Code‏
|
||||
* [Data Structure : JavaScript (leetcode problem solving)‏](https://www.youtube.com/playlist?list=PLS-MrzRLZtmdIHJ-Osvv_sJO1Msc4VM_7) - Shadow Coding‏
|
||||
* [Data Structure C++‎‏](https://www.youtube.com/playlist?list=PLsGJzJ8SQXTcsXRVviurGei0lf_t_I4D8) - Mega Code‏
|
||||
* [Data Structures and Algorithms‏](https://www.youtube.com/playlist?list=PL0vtyWBHY2NVOtPYuz0rNw6kmuLmVZ780) - Tarek Alabd‏ (:construction: *in process*‏)
|
||||
* [Data Structures Full Course In Arabic‏](https://www.youtube.com/playlist?list=PLCInYL3l2AajqOUW_2SwjWeMwf4vL4RSp) - Adel Nasim‏
|
||||
* [grokking-algorithms‏](https://www.youtube.com/playlist?list=PLIxq078xdGdZl38Yx2IhYc_YpKjx7MAXW) - Nehal Elsamoly‏
|
||||
* [Problem solving (Arabic)‏](https://www.youtube.com/playlist?list=PLYknlDiw2kSwdDhTSDoX7ZoVEle8nbZdk) - Muhammed Afifi‏
|
||||
* [Problems Solving With C++ Level One‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAyX4CCOP--TR36SfD5g7gru) - Elzero Web School‏
|
||||
* [Problems Solving With C++ Level Two‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAwgefuRqj8OB5ioMT1eC_EZ) - Elzero Web School‏ (:construction: *in process*‏)
|
||||
* [Sorting algorithms \|‏ خوارزميات الترتيب](https://www.youtube.com/playlist?list=PLINp1xZ5bPrpmnL0cdk80czipnIqPAzWH) - DevLoopers‏
|
||||
* [Standard Template Library (STL) Full Tutorial Using C++ In Arabic‏](https://www.youtube.com/playlist?list=PLCInYL3l2AainAE4Xq2kdNGDfG0bys2xp) - Adel Nasim‏
|
||||
|
||||
|
||||
### Assembly
|
||||
|
||||
* [Microprocessor 8086 & Assembly Language Course‏](https://www.youtube.com/playlist?list=PLi0-RQZxQ8Fmwopq43StX61igOvXbFMQv) - Sherif Ezzat
|
||||
* [x86 Assembly Language - لغة التجميع](https://www.youtube.com/playlist?list=PLMm8EjqH1EFVodghdDWaAuHkHqj-nJ0bN) - Ahmed Sallam
|
||||
* [Microprocessor 8086 & Assembly Language Course‏](https://www.youtube.com/playlist?list=PLi0-RQZxQ8Fmwopq43StX61igOvXbFMQv) - Sherif Ezzat‏
|
||||
* [x86 Assembly Language -‏ لغة التجميع](https://www.youtube.com/playlist?list=PLMm8EjqH1EFVodghdDWaAuHkHqj-nJ0bN) - Ahmed Sallam‏
|
||||
|
||||
|
||||
### Bootstrap
|
||||
|
||||
* [كورس بوتستراب كامل للمبتدئين \| bootstrap 2021 tutorial for beginners‏](https://www.youtube.com/playlist?list=PLknwEmKsW8OscL9GvjxwL7RYbcwwdIitk) - Abdelrahman Gamal
|
||||
* [Bootstrap 3 In Arabic‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAw24EjNUp_88S1VeaNK8Cts) - Elzero Web School
|
||||
* [Bootstrap 4‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAy0dU3C3_lNRTSTtqePEsI2) - Elzero Web School
|
||||
* [Bootstrap 5 Design 01 Bondi‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAyvm7f--dc6XqkpfDcen_vQ) - Elzero Web School
|
||||
* [Bootstrap 5 Tutorial‏](https://www.youtube.com/playlist?list=PLnD96kXp-_pMJp3stPetkN76AJ2mmeah7) - Ag Coding
|
||||
* [كورس بوتستراب كامل للمبتدئين \| bootstrap 2021 tutorial for beginners‏](https://www.youtube.com/playlist?list=PLknwEmKsW8OscL9GvjxwL7RYbcwwdIitk) - Abdelrahman Gamal‏
|
||||
* [Bootstrap 3 In Arabic‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAw24EjNUp_88S1VeaNK8Cts) - Elzero Web School‏
|
||||
* [Bootstrap 4‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAy0dU3C3_lNRTSTtqePEsI2) - Elzero Web School‏
|
||||
* [Bootstrap 5 Design 01 Bondi‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAyvm7f--dc6XqkpfDcen_vQ) - Elzero Web School‏
|
||||
* [Bootstrap 5 Tutorial‏](https://www.youtube.com/playlist?list=PLnD96kXp-_pMJp3stPetkN76AJ2mmeah7) - Ag Coding‏
|
||||
|
||||
|
||||
### C
|
||||
|
||||
* [Data Structures In Arabic Using C‏](https://www.youtube.com/playlist?list=PLEBRPBUkZ4mb6lVqSLRQ7mvSFRcoR7-XV) - FCI-Career-Build
|
||||
* [Introduction to Programming ( C Language - مقدمة في البرمجة ( لغة السي](https://www.youtube.com/playlist?list=PLMm8EjqH1EFXI8wByY0umF_DQON2S9uws) - Ahmed Sallam
|
||||
* [Data Structures In Arabic Using C‏](https://www.youtube.com/playlist?list=PLEBRPBUkZ4mb6lVqSLRQ7mvSFRcoR7-XV) - FCI-Career-Build‏
|
||||
* [Introduction to Programming ( C Language -‏ مقدمة في البرمجة ( لغة السي](https://www.youtube.com/playlist?list=PLMm8EjqH1EFXI8wByY0umF_DQON2S9uws) - Ahmed Sallam‏
|
||||
|
||||
|
||||
### <a id="csharp"></a>C#‎
|
||||
|
||||
* [الدورة المتقدمة C#-SQLServer Using MVP & Git‏](https://www.youtube.com/playlist?list=PLDQ11FgmbqQMaXEZihgOgfwZCNAr03sph) - Programming Solutions - Academy
|
||||
* [المواضيع المتقدمة في السي شارب \| Advanced C# Course in Arabia‏](https://www.youtube.com/playlist?list=PLX1bW_GeBRhBbnebNayUDYlQJRBKwZKlo) - Codographia
|
||||
* [كورس سي شارب للمبتدئين](https://www.youtube.com/playlist?list=PLX1bW_GeBRhCU9l7examhVrARmXHHRrLR) - Codographia
|
||||
* [كورس Design Patternsبالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY56xIDF6IX0hmZC6JYoGQkS) - Mobarmg
|
||||
* [C#‎‏](https://www.youtube.com/playlist?list=PLltZRmsFXWnIfLM0BKgJNZYVnvCDZNAh_) - 6wrni
|
||||
* [C# Advanced‏](https://www.youtube.com/playlist?list=PLsV97AQt78NQYhO7NqlBTrJX_Nsk3SmyY) - Passionate Coders \| محمد المهدي
|
||||
* [C# Fundamentals‏](https://www.youtube.com/playlist?list=PLsV97AQt78NT0H8J71qe7edwRpAirfqOI) - Passionate Coders \| محمد المهدي
|
||||
* [C# Programming Course Level 1 Basics By Arabic](https://www.youtube.com/playlist?list=PLnzqK5HvcpwQLsXXXxx_mX3WvUEgGM0iA) - محمد شوشان
|
||||
* [C# Programming Course Level 2 Object Oriented Programming By Arabic](https://www.youtube.com/playlist?list=PLnzqK5HvcpwQfXeFaGHRYQfyQrJjOy43u) - محمد شوشان
|
||||
* [Object-Oriented Programming (OOP)‏](https://www.youtube.com/playlist?list=PLsV97AQt78NQumtM4rQc77yjbkZcGOTX5) - Passionate Coders \| محمد المهدي
|
||||
* [Object-Oriented Programming in C#‎ سلسلة](https://www.youtube.com/playlist?list=PLX1bW_GeBRhAfq0EsDHH4YemBAd6G-H75) - Codographia
|
||||
* [Unit Testing‏](https://www.youtube.com/playlist?list=PLsV97AQt78NS2O4QeWFVHOOALoehl22vU) - Passionate Coders \| محمد المهدي
|
||||
* [Unit Testing in C# [Arabic]](https://www.youtube.com/playlist?list=PLwj1YcMhLRN28xijrXMO255JHsO3csus-) - خالد السعداني
|
||||
* [الدورة المتقدمة C#-SQLServer Using MVP & Git‏](https://www.youtube.com/playlist?list=PLDQ11FgmbqQMaXEZihgOgfwZCNAr03sph) - Programming Solutions - Academy‏
|
||||
* [المواضيع المتقدمة في السي شارب \| Advanced C# Course in Arabia‏](https://www.youtube.com/playlist?list=PLX1bW_GeBRhBbnebNayUDYlQJRBKwZKlo) - Codographia‏
|
||||
* [كورس سي شارب للمبتدئين](https://www.youtube.com/playlist?list=PLX1bW_GeBRhCU9l7examhVrARmXHHRrLR) - Codographia‏
|
||||
* [كورس Design Patternsبالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY56xIDF6IX0hmZC6JYoGQkS) - Mobarmg‏
|
||||
* [C#‎‏](https://www.youtube.com/playlist?list=PLltZRmsFXWnIfLM0BKgJNZYVnvCDZNAh_) - 6wrni‏
|
||||
* [C# Advanced‏](https://www.youtube.com/playlist?list=PLsV97AQt78NQYhO7NqlBTrJX_Nsk3SmyY) - Passionate Coders \|‏ محمد المهدي
|
||||
* [C# Fundamentals‏](https://www.youtube.com/playlist?list=PLsV97AQt78NT0H8J71qe7edwRpAirfqOI) - Passionate Coders \|‏ محمد المهدي
|
||||
* [C# Programming Course Level 1 Basics By Arabic‏](https://www.youtube.com/playlist?list=PLnzqK5HvcpwQLsXXXxx_mX3WvUEgGM0iA) - محمد شوشان
|
||||
* [C# Programming Course Level 2 Object Oriented Programming By Arabic‏](https://www.youtube.com/playlist?list=PLnzqK5HvcpwQfXeFaGHRYQfyQrJjOy43u) - محمد شوشان
|
||||
* [Object-Oriented Programming (OOP)‏](https://www.youtube.com/playlist?list=PLsV97AQt78NQumtM4rQc77yjbkZcGOTX5) - Passionate Coders \|‏ محمد المهدي
|
||||
* [Object-Oriented Programming in C#‎ سلسلة](https://www.youtube.com/playlist?list=PLX1bW_GeBRhAfq0EsDHH4YemBAd6G-H75) - Codographia‏
|
||||
* [Unit Testing‏](https://www.youtube.com/playlist?list=PLsV97AQt78NS2O4QeWFVHOOALoehl22vU) - Passionate Coders \|‏ محمد المهدي
|
||||
* [Unit Testing in C# [Arabic]‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN28xijrXMO255JHsO3csus-) - خالد السعداني
|
||||
|
||||
|
||||
### <a id="cpp"></a>C++‎
|
||||
|
||||
* [[ أصول البرمجة ] - شرح المؤشرات ( Pointers ) في لغة C/C++‎‏](https://www.youtube.com/playlist?list=PLwCMLs3sjOY6z3264DylWHcHBtmEjUWrA) - Hard-Code
|
||||
* [كورس البرمجة للمبتدئين بلغة C++‎‏](https://www.youtube.com/playlist?list=PL0vtyWBHY2NXXdrLompmAnxOaEfcAVmQi) - Tarek Alabd
|
||||
* [Arabic C++ For kids & beginners (برمجة لصغار السن والمبتدئيين)](https://www.youtube.com/playlist?list=PLPt2dINI2MIbwnEoeHZnUHeUHjTd8x4F3) - Arabic Competitive Programming
|
||||
* [Basics of OOP with C++‎‏](https://www.youtube.com/playlist?list=PL0vtyWBHY2NVdm59YZTEEuXqVQZtUAgoD) - Tarek Alabd
|
||||
* [C++ - OOP بالعربى](https://www.youtube.com/playlist?list=PLDQ11FgmbqQNq_cdsda-OLBZmS8F8vVVA) - Programming Solutions - Academy
|
||||
* [C++ For Beginners - Eng. Marwa Radwan‏](https://www.youtube.com/playlist?list=PLsECTUuTGe7pfm3TTshn5V3PFQQ_cZyvv) - Techs Experts
|
||||
* [C++ Intensive - برمجة الحاسوب](https://www.youtube.com/playlist?list=PLPt2dINI2MIZPFq6HyUB1Uhxdh1UDnZMS) - Arabic Competitive Programming
|
||||
* [C++ Object-Oriented Design and Programming‏](https://www.youtube.com/playlist?list=PLPt2dINI2MIbMba7tpx3qvmgOsDlpITwG) - Arabic Competitive Programming
|
||||
* [C++ Programming \| Arabic Course‏](https://www.youtube.com/playlist?list=PLwCMLs3sjOY74yb5ZrRg1Cmil46KxLUDC) - Hard-Code
|
||||
* [C++ Programming Basics‏](https://www.youtube.com/playlist?list=PLv3VqjyehAoSSzkyHmWk89hPgcVwTNouG) - Ali Shahin
|
||||
* [C++ Programming Course Level 1 Basics By Arabic](https://www.youtube.com/playlist?list=PLnzqK5HvcpwQ_nQt-hKGAEIDJjTJBCV02) - محمد شوشان
|
||||
* [C++ Programming Course Level 2 Object Oriented Programming By Arabic](https://www.youtube.com/playlist?list=PLnzqK5HvcpwRUapI9yl1qwkdpS__UtqLd) - محمد شوشان
|
||||
* [C++ Programming From Scratch In Arabic‏](https://www.youtube.com/playlist?list=PLCInYL3l2AajFAiw4s1U4QbGszcQ-rAb3) - Adel Nasim
|
||||
* [CS Master - Level 0 - Intro to CS مقدمة لعلوم الحاسب](https://www.youtube.com/playlist?list=PLL2zWZTDFZzivM2GAL3HpuFrHlLwp6FoO) - KMR Script
|
||||
* [CS Master - Level 4 - Object Oriented Programming & Design Patterns‏](https://www.youtube.com/playlist?list=PLL2zWZTDFZzhul3X8djkfXzUxl7Cw7-sF) - KMR Script
|
||||
* [Fundamentals Of Programming With C++‎‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAwy-rS6WKudwVeb_x63EzgS) - Elzero Web School
|
||||
* [Introduction to Programming Using C++‎‏](https://www.youtube.com/playlist?list=PL3X--QIIK-OFIRbOHbOXbcfSAvw198lUy) - Programming Advices
|
||||
* [[ أصول البرمجة ] - شرح المؤشرات ( Pointers )‏ في لغة C/C++‎‏](https://www.youtube.com/playlist?list=PLwCMLs3sjOY6z3264DylWHcHBtmEjUWrA) - Hard-Code‏
|
||||
* [كورس البرمجة للمبتدئين بلغة C++‎‏](https://www.youtube.com/playlist?list=PL0vtyWBHY2NXXdrLompmAnxOaEfcAVmQi) - Tarek Alabd‏
|
||||
* [Arabic C++ For kids & beginners‏ (برمجة لصغار السن والمبتدئيين)](https://www.youtube.com/playlist?list=PLPt2dINI2MIbwnEoeHZnUHeUHjTd8x4F3) - Arabic Competitive Programming‏
|
||||
* [Basics of OOP with C++‎‏](https://www.youtube.com/playlist?list=PL0vtyWBHY2NVdm59YZTEEuXqVQZtUAgoD) - Tarek Alabd‏
|
||||
* [C++ - OOP‏ بالعربى](https://www.youtube.com/playlist?list=PLDQ11FgmbqQNq_cdsda-OLBZmS8F8vVVA) - Programming Solutions - Academy‏
|
||||
* [C++ For Beginners - Eng. Marwa Radwan‏](https://www.youtube.com/playlist?list=PLsECTUuTGe7pfm3TTshn5V3PFQQ_cZyvv) - Techs Experts‏
|
||||
* [C++ Intensive -‏ برمجة الحاسوب](https://www.youtube.com/playlist?list=PLPt2dINI2MIZPFq6HyUB1Uhxdh1UDnZMS) - Arabic Competitive Programming‏
|
||||
* [C++ Object-Oriented Design and Programming‏](https://www.youtube.com/playlist?list=PLPt2dINI2MIbMba7tpx3qvmgOsDlpITwG) - Arabic Competitive Programming‏
|
||||
* [C++ Programming \| Arabic Course‏](https://www.youtube.com/playlist?list=PLwCMLs3sjOY74yb5ZrRg1Cmil46KxLUDC) - Hard-Code‏
|
||||
* [C++ Programming Basics‏](https://www.youtube.com/playlist?list=PLv3VqjyehAoSSzkyHmWk89hPgcVwTNouG) - Ali Shahin‏
|
||||
* [C++ Programming Course Level 1 Basics By Arabic‏](https://www.youtube.com/playlist?list=PLnzqK5HvcpwQ_nQt-hKGAEIDJjTJBCV02) - محمد شوشان
|
||||
* [C++ Programming Course Level 2 Object Oriented Programming By Arabic‏](https://www.youtube.com/playlist?list=PLnzqK5HvcpwRUapI9yl1qwkdpS__UtqLd) - محمد شوشان
|
||||
* [C++ Programming From Scratch In Arabic‏](https://www.youtube.com/playlist?list=PLCInYL3l2AajFAiw4s1U4QbGszcQ-rAb3) - Adel Nasim‏
|
||||
* [CS Master - Level 0 - Intro to CS‏ مقدمة لعلوم الحاسب](https://www.youtube.com/playlist?list=PLL2zWZTDFZzivM2GAL3HpuFrHlLwp6FoO) - KMR Script‏
|
||||
* [CS Master - Level 4 - Object Oriented Programming & Design Patterns‏](https://www.youtube.com/playlist?list=PLL2zWZTDFZzhul3X8djkfXzUxl7Cw7-sF) - KMR Script‏
|
||||
* [Fundamentals Of Programming With C++‎‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAwy-rS6WKudwVeb_x63EzgS) - Elzero Web School‏
|
||||
* [Introduction to Programming Using C++‎‏](https://www.youtube.com/playlist?list=PL3X--QIIK-OFIRbOHbOXbcfSAvw198lUy) - Programming Advices‏
|
||||
* [Modern c++‎‏](https://www.youtube.com/playlist?list=PLkH1REggdbJpykrlVYYRteEstS6F4VNtP) - Moatasem El Sayed‏ *(:construction: in process)*
|
||||
* [Object-Oriented Programming C++ in Arabic‏](https://www.youtube.com/playlist?list=PLCInYL3l2Aaiq1oLvi9TlWtArJyAuCVow) - Adel Nasim
|
||||
* [Object-Oriented Programming with C++‎‏](https://www.youtube.com/playlist?list=PLMm8EjqH1EFXG_-EgmKb1gxW5S4XaQYaE) - Ahmed Sallam
|
||||
* [Object-Oriented Programming C++ in Arabic‏](https://www.youtube.com/playlist?list=PLCInYL3l2Aaiq1oLvi9TlWtArJyAuCVow) - Adel Nasim‏
|
||||
* [Object-Oriented Programming with C++‎‏](https://www.youtube.com/playlist?list=PLMm8EjqH1EFXG_-EgmKb1gxW5S4XaQYaE) - Ahmed Sallam‏
|
||||
* [Programming 1 - Programming For Beginners - C++‎‏](https://www.youtube.com/playlist?list=PL1DUmTEdeA6IUD9Gt5rZlQfbZyAWXd-oD) - محمد الدسوقي
|
||||
* [Programming 2 - Object Oriented Programming with C++‎‏](https://www.youtube.com/playlist?list=PL1DUmTEdeA6KLEvIO0NyrkT91BVle8BOU) - محمد الدسوقي
|
||||
|
||||
|
||||
### Cloud Computing
|
||||
|
||||
* [Confluent بالعربي](https://www.youtube.com/playlist?list=PLZd2bo_SbAm-qHFib_KPKFBlOL3Ggb9Hi) - Ismail Anjrini
|
||||
* [GCP بالعربي](https://www.youtube.com/playlist?list=PLZd2bo_SbAm-JJyJ5kJA02rcOXnyfqIWO) - Ismail Anjrini
|
||||
* [Confluent‏ بالعربي](https://www.youtube.com/playlist?list=PLZd2bo_SbAm-qHFib_KPKFBlOL3Ggb9Hi) - Ismail Anjrini‏
|
||||
* [GCP‏ بالعربي](https://www.youtube.com/playlist?list=PLZd2bo_SbAm-JJyJ5kJA02rcOXnyfqIWO) - Ismail Anjrini‏
|
||||
|
||||
|
||||
#### AWS
|
||||
|
||||
* [AWS Certified Solutions Architect - Associate By Eng-Mohammed Oday \| Arabic‏](https://www.youtube.com/playlist?list=PLCIJjtzQPZJ_yv1T4eKYsY1hZxcYSjhGY) - Free4arab \| Information Technology
|
||||
* [AWS SAA-C02 - كورس كامل بالعربي مع المهندس عيسى أبو شريف](youtube.com/playlist?list=PLOoZRfEtk6kWSM_l9xMjDh-_MJXl03-pf) - AWS Riyadh User Group
|
||||
* [AWS Certified Solutions Architect - Associate By Eng-Mohammed Oday \| Arabic‏](https://www.youtube.com/playlist?list=PLCIJjtzQPZJ_yv1T4eKYsY1hZxcYSjhGY) - Free4arab \| Information Technology‏
|
||||
* [AWS SAA-C02 - ‏كورس كامل بالعربي مع المهندس عيسى أبو شريف](youtube.com/playlist?list=PLOoZRfEtk6kWSM_l9xMjDh-_MJXl03-pf) - AWS Riyadh User Group‏
|
||||
|
||||
|
||||
### Computer Architecture
|
||||
|
||||
* [Computer Architecture - تنظيم وبناء الحاسب](https://www.youtube.com/playlist?list=PLMm8EjqH1EFVEVWSiBdCoBEJHffjHUScZ) - Ahmed Sallam
|
||||
* [Computer Architecture - ‏تنظيم وبناء الحاسب](https://www.youtube.com/playlist?list=PLMm8EjqH1EFVEVWSiBdCoBEJHffjHUScZ) - Ahmed Sallam‏
|
||||
|
||||
|
||||
### Computer Science
|
||||
|
||||
* [بالعربي CS50T كورس \|\| CS50T in Arabic‏](https://www.youtube.com/playlist?list=PLnrlZUDQofUvLtIMvVxZRYYju7ni0Xsxq) - Coders Camp - Rasha Abdeen
|
||||
* [تعلم أساسيات البرمجة للمبتدئين](https://www.youtube.com/playlist?list=PLoP3S2S1qTfBCtTYJ2dyy3mpn7aWAAjdN) - OctuCode
|
||||
* [كورس أساسيات الكمبيوتر](https://www.youtube.com/playlist?list=PLvGNfY-tFUN8D7uAQzkBfMkJ7XAFWSsIv) - غريب الشيخ \|\| Ghareeb Elshaikh
|
||||
* [ما قبل تعلم البرمجة](https://www.youtube.com/playlist?list=PLDoPjvoNmBAx8xKvAXpb6f0Urj98Xo7zg) - Elzero Web School
|
||||
* [مفاهيم اساسية في البرمجة](https://www.youtube.com/playlist?list=PLv3VqjyehAoRcrpuavzqleAA2jJYk6KgU) - Ali Shahin
|
||||
* [مقدمة في علوم الحاسب](https://www.youtube.com/playlist?list=PLv3VqjyehAoRUEU3Gr1Fwzhdmz4wH0tNJ) - Ali Shahin
|
||||
* [CS Master - Level 2- Dive into the Computer كيف يعمل الكمبيوتر](https://www.youtube.com/playlist?list=PLL2zWZTDFZziX_xS2bbGfLAOHVmlzURhF) - KMR Script
|
||||
* [CS50 in Arabic‏](https://www.youtube.com/playlist?list=PLL2zWZTDFZzibJ49gBM2owqCzda8meSNj) - KMR Script
|
||||
* [CS50 In Arabic‏](https://www.youtube.com/playlist?list=PLnrlZUDQofUv7JE4QIahAyztrQU9bnJmd) - Coders Camp - Rasha Abdeen
|
||||
* [Cs50 In Arabic 2022 \| كورس cs50 بالعربي كامل](https://www.youtube.com/playlist?list=PLknwEmKsW8OvsdJ64v5YljHNtt100kN6w) - Abdelrahman Gamal‏ *(:construction: in process)*
|
||||
* [Distributed Systems Design Patterns‏](https://www.youtube.com/playlist?list=PLZafHDYyxnk6ssRA-8LzMpep1MrqocFiY) - Mahmoud Youssef - محمود يوسف *(:construction: in process)*
|
||||
* [بالعربي CS50T‏ كورس \|\| CS50T in Arabic‏](https://www.youtube.com/playlist?list=PLnrlZUDQofUvLtIMvVxZRYYju7ni0Xsxq) - Coders Camp - Rasha Abdeen‏
|
||||
* [تعلم أساسيات البرمجة للمبتدئين](https://www.youtube.com/playlist?list=PLoP3S2S1qTfBCtTYJ2dyy3mpn7aWAAjdN) - OctuCode‏
|
||||
* [كورس أساسيات الكمبيوتر](https://www.youtube.com/playlist?list=PLvGNfY-tFUN8D7uAQzkBfMkJ7XAFWSsIv) - غريب الشيخ \|\| Ghareeb Elshaikh‏
|
||||
* [ما قبل تعلم البرمجة](https://www.youtube.com/playlist?list=PLDoPjvoNmBAx8xKvAXpb6f0Urj98Xo7zg) - Elzero Web School‏
|
||||
* [مفاهيم اساسية في البرمجة](https://www.youtube.com/playlist?list=PLv3VqjyehAoRcrpuavzqleAA2jJYk6KgU) - Ali Shahin‏
|
||||
* [مقدمة في علوم الحاسب](https://www.youtube.com/playlist?list=PLv3VqjyehAoRUEU3Gr1Fwzhdmz4wH0tNJ) - Ali Shahin‏
|
||||
* [CS Master - Level 2- Dive into the Computer‏ كيف يعمل الكمبيوتر](https://www.youtube.com/playlist?list=PLL2zWZTDFZziX_xS2bbGfLAOHVmlzURhF) - KMR Script‏
|
||||
* [CS50 in Arabic‏](https://www.youtube.com/playlist?list=PLL2zWZTDFZzibJ49gBM2owqCzda8meSNj) - KMR Script‏
|
||||
* [CS50 In Arabic‏](https://www.youtube.com/playlist?list=PLnrlZUDQofUv7JE4QIahAyztrQU9bnJmd) - Coders Camp - Rasha Abdeen‏
|
||||
* [Cs50 In Arabic 2022 \|‏ كورس cs50‏ بالعربي كامل](https://www.youtube.com/playlist?list=PLknwEmKsW8OvsdJ64v5YljHNtt100kN6w) - Abdelrahman Gamal‏ *(:construction: in process)*
|
||||
* [Distributed Systems Design Patterns‏](https://www.youtube.com/playlist?list=PLZafHDYyxnk6ssRA-8LzMpep1MrqocFiY) - Mahmoud Youssef -‏ محمود يوسف *(:construction: in process)*
|
||||
|
||||
|
||||
### Dart
|
||||
|
||||
* [Dart بالعربى](https://www.youtube.com/playlist?list=PLMDrOnfT8EAj6Yjdki9OCLSwqdBs4xhQz) - Asem Saafan
|
||||
* [Dart ‏بالعربى](https://www.youtube.com/playlist?list=PLMDrOnfT8EAj6Yjdki9OCLSwqdBs4xhQz) - Asem Saafan‏
|
||||
|
||||
|
||||
### Databases
|
||||
|
||||
* [CS Master - Level 3 - Databases قواعد البيانات](https://www.youtube.com/playlist?list=PLL2zWZTDFZzhXQ1bcYlO3PtN4MsLiG-gy) - KMR Script
|
||||
* [Database 1 - المقرر النظرى - Fundamentals of Database Systems](https://www.youtube.com/playlist?list=PL37D52B7714788190) - محمد الدسوقى
|
||||
* [CS Master - Level 3 - Databases‏ قواعد البيانات](https://www.youtube.com/playlist?list=PLL2zWZTDFZzhXQ1bcYlO3PtN4MsLiG-gy) - KMR Script‏
|
||||
* [Database 1 - ‏المقرر النظرى - Fundamentals of Database Systems‏](https://www.youtube.com/playlist?list=PL37D52B7714788190) - محمد الدسوقى
|
||||
* [Database Design](https://www.youtube.com/playlist?list=PLkzDzmo9y3VHDFKp7LuXd-FwbefvTL5o0) - تخاريف مبرمج
|
||||
* [Designing Data Intensive Applications بالعربي](https://www.youtube.com/playlist?list=PLTRDUPO2OmIljJwE9XMYE_XEgEIWZDCuQ) - Ahmed Elemam
|
||||
* [Relational Database Internals (Arabic - عربي)](https://www.youtube.com/playlist?list=PLE8kQVoC67PzGwMMsSk3C8MvfAqcYjusF) - TechVault
|
||||
* [Designing Data Intensive Applications ‏بالعربي](https://www.youtube.com/playlist?list=PLTRDUPO2OmIljJwE9XMYE_XEgEIWZDCuQ) - Ahmed Elemam‏
|
||||
* [Relational Database Internals (Arabic - ‏عربي)](https://www.youtube.com/playlist?list=PLE8kQVoC67PzGwMMsSk3C8MvfAqcYjusF) - TechVault‏
|
||||
|
||||
|
||||
#### NoSQL
|
||||
|
||||
* [Mongodb - دورة تعلم](https://www.youtube.com/playlist?list=PLfDx4cQoUNObp1ujQRNooNiadKdlflevM) - Algorithm Academy
|
||||
* [Mongodb - دورة قواعد بيانات(للكفيف)م](https://www.youtube.com/playlist?list=PLF8OvnCBlEY1sdUym7Cnb5Xc3d7HXLjqf) - TheNewBaghdad
|
||||
* [Mongodb - شرح قواعد البيانات](https://www.youtube.com/playlist?list=PLGhZWewM_75IILJm_1QDq0yPLbLQz_TCb) - Emam Academy
|
||||
* [Mongodb - ‏دورة تعلم](https://www.youtube.com/playlist?list=PLfDx4cQoUNObp1ujQRNooNiadKdlflevM) - Algorithm Academy‏
|
||||
* [Mongodb - ‏دورة قواعد بيانات(للكفيف)م](https://www.youtube.com/playlist?list=PLF8OvnCBlEY1sdUym7Cnb5Xc3d7HXLjqf) - TheNewBaghdad‏
|
||||
* [Mongodb - ‏شرح قواعد البيانات](https://www.youtube.com/playlist?list=PLGhZWewM_75IILJm_1QDq0yPLbLQz_TCb) - Emam Academy‏
|
||||
|
||||
|
||||
#### SQL
|
||||
|
||||
* [Arabic MySQL Essentials مبادئ ماي سكوال](https://www.youtube.com/playlist?list=PLL2zWZTDFZzhBxhIJkhz-B-HulZUN6YzY) - KMR Script
|
||||
* [Database 1 - المقرر العملى - Learn SQL In Arabic](https://www.youtube.com/playlist?list=PL85D9FC9DFD6B9484) - محمد الدسوقى
|
||||
* [Learn MySQL‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAz6DT8SzQ1CODJTH-NIA7R9) - Elzero Web School
|
||||
* [MS SQL Server For Beginners](https://www.youtube.com/playlist?list=PL1DUmTEdeA6J6oDLTveTt4Z7E5qEfFluE) - محمد الدسوقى
|
||||
* [MySQL tutorials \|\| بناء قواعد البيانات بكفاءة عالية](https://www.youtube.com/playlist?list=PLF8OvnCBlEY25O_Ql0CrgQUAc5NVYkWF2) - TheNewBaghdad
|
||||
* [SQL for Data Analysis \| شاهد كيف أصبح الفيل والدرفيل أصدقاء](https://www.youtube.com/watch?v=kb-_GbpH3sQ) - Big Data
|
||||
* [Arabic MySQL Essentials ‏مبادئ ماي سكوال](https://www.youtube.com/playlist?list=PLL2zWZTDFZzhBxhIJkhz-B-HulZUN6YzY) - KMR Script‏
|
||||
* [Database 1 - ‏المقرر العملى - Learn SQL In Arabic](https://www.youtube.com/playlist?list=PL85D9FC9DFD6B9484) - ‏محمد الدسوقى
|
||||
* [Learn MySQL‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAz6DT8SzQ1CODJTH-NIA7R9) - Elzero Web School‏
|
||||
* [MS SQL Server For Beginners](https://www.youtube.com/playlist?list=PL1DUmTEdeA6J6oDLTveTt4Z7E5qEfFluE) - ‏محمد الدسوقى
|
||||
* [MySQL tutorials \|\| ‏بناء قواعد البيانات بكفاءة عالية](https://www.youtube.com/playlist?list=PLF8OvnCBlEY25O_Ql0CrgQUAc5NVYkWF2) - TheNewBaghdad‏
|
||||
* [SQL for Data Analysis \| ‏شاهد كيف أصبح الفيل والدرفيل أصدقاء](https://www.youtube.com/watch?v=kb-_GbpH3sQ) - Big Data‏
|
||||
|
||||
|
||||
### Deep Learning
|
||||
|
||||
* [14 الكورس الأول : التعلم العميق و الشبكات العصبية](https://www.youtube.com/playlist?list=PL6-3IRz2XF5WyBLsw6yJYWIiFJ1OmmRyK) - Hesham Asem
|
||||
* [15 الكورس الثاني : تطوير الشبكات العميقة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5VAuf-d71pu2vGZDgGZnZMw) - Hesham Asem
|
||||
* [16 الكورس الثالث : هيكلية مشاريع تعلم الآلة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XhL1i0vvBi39LA_ChPzyWw) - Hesham Asem
|
||||
* [17 الكورس الرابع : الشبكات العصبية الملتفة CNN‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XHyhWNs-jxFtfERv4NlZmm) - Hesham Asem
|
||||
* [18 الكورس الخامس : الشبكات العصبية المتكررة RNN‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5WTcrGAWlZUL9sOGYgSsON_) - Hesham Asem
|
||||
* [14 ‏الكورس الأول : التعلم العميق و الشبكات العصبية](https://www.youtube.com/playlist?list=PL6-3IRz2XF5WyBLsw6yJYWIiFJ1OmmRyK) - Hesham Asem‏
|
||||
* [15 ‏الكورس الثاني : تطوير الشبكات العميقة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5VAuf-d71pu2vGZDgGZnZMw) - Hesham Asem‏
|
||||
* [16 ‏الكورس الثالث : هيكلية مشاريع تعلم الآلة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XhL1i0vvBi39LA_ChPzyWw) - Hesham Asem‏
|
||||
* [17 ‏الكورس الرابع : الشبكات العصبية الملتفة CNN‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XHyhWNs-jxFtfERv4NlZmm) - Hesham Asem‏
|
||||
* [18 ‏الكورس الخامس : الشبكات العصبية المتكررة RNN‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5WTcrGAWlZUL9sOGYgSsON_) - Hesham Asem‏
|
||||
|
||||
|
||||
### DevOps
|
||||
|
||||
* [GitOps and K8s بالعربي](https://www.youtube.com/playlist?list=PLTRDUPO2OmInz2Fo41zwnoR1IArx70Hig) - Ahmed Elemam
|
||||
* [Kubernetes بالعربي](https://www.youtube.com/playlist?list=PLX1bW_GeBRhDCHijCrMO5F-oHg52rRBpl) - Codographia
|
||||
* [Terraform بالعربي \| DevOps in Arabic‏](https://www.youtube.com/playlist?list=PLX1bW_GeBRhBIT9-Nyt4_osatqokaN8ae) - Codographia
|
||||
* [GitOps and K8s‏ بالعربي](https://www.youtube.com/playlist?list=PLTRDUPO2OmInz2Fo41zwnoR1IArx70Hig) - Ahmed Elemam‏
|
||||
* [Kubernetes‏ بالعربي](https://www.youtube.com/playlist?list=PLX1bW_GeBRhDCHijCrMO5F-oHg52rRBpl) - Codographia‏
|
||||
* [Terraform‏ بالعربي \| DevOps in Arabic‏](https://www.youtube.com/playlist?list=PLX1bW_GeBRhBIT9-Nyt4_osatqokaN8ae) - Codographia‏
|
||||
|
||||
|
||||
### Docker
|
||||
|
||||
* [Docker سلسلة تعلم](https://www.youtube.com/playlist?list=PLX1bW_GeBRhDkTf_jbdvBbkHs2LCWVeXZ) - Codographia
|
||||
* [Docker and Kubernetes \| العلبة دي فيها سوعبان \| Arabic‏](https://www.youtube.com/watch?v=PrusdhS2lmo) - Ahmed Sami
|
||||
* [Docker Practical Course in Arabic - بالعربي Docker شرح](https://www.youtube.com/playlist?list=PLzNfs-3kBUJnY7Cy1XovLaAkgfjim05RR) - Tresmerge
|
||||
* [Software Containerization for Beginners‏](https://www.youtube.com/playlist?list=PLsV97AQt78NTJTBGKI0GE3eJc2Q_SC2B-) - Passionate Coders \| محمد المهدي
|
||||
* [Docker‏ سلسلة تعلم](https://www.youtube.com/playlist?list=PLX1bW_GeBRhDkTf_jbdvBbkHs2LCWVeXZ) - Codographia‏
|
||||
* [Docker and Kubernetes \|‏ العلبة دي فيها سوعبان \| Arabic‏](https://www.youtube.com/watch?v=PrusdhS2lmo) - Ahmed Sami‏
|
||||
* [Docker Practical Course in Arabic -‏ بالعربي Docker شرح](https://www.youtube.com/playlist?list=PLzNfs-3kBUJnY7Cy1XovLaAkgfjim05RR) - Tresmerge‏
|
||||
* [Software Containerization for Beginners‏](https://www.youtube.com/playlist?list=PLsV97AQt78NTJTBGKI0GE3eJc2Q_SC2B-) - Passionate Coders \| ‏محمد المهدي
|
||||
|
||||
|
||||
### Elastic
|
||||
|
||||
* [Elastic 5‏](https://www.youtube.com/playlist?list=PLZd2bo_SbAm-Z4WBo9-_mWLyjjwDioux-) - Ismail Anjrini
|
||||
* [Elastic بالعربي](https://www.youtube.com/playlist?list=PLZd2bo_SbAm87XtU1K1p_uxqJBjaQJAY1) - Ismail Anjrini
|
||||
* [Elastic 5‏](https://www.youtube.com/playlist?list=PLZd2bo_SbAm-Z4WBo9-_mWLyjjwDioux-) - Ismail Anjrini‏
|
||||
* [Elastic‏ بالعربي](https://www.youtube.com/playlist?list=PLZd2bo_SbAm87XtU1K1p_uxqJBjaQJAY1) - Ismail Anjrini‏
|
||||
|
||||
|
||||
### Flutter
|
||||
|
||||
* [Advanced Flutter Tutorial - build E commerce App‏](https://www.youtube.com/playlist?list=PLGVaNq6mHiniedDoXJd35XFBNvJAoq-xe) - Scholar Tech
|
||||
* [Best Flutter Course For Beginner in Arabic\| افضل دوره فلاتر بالعربي](https://www.youtube.com/playlist?list=PLGVaNq6mHinjCPki-3xraQdGWKVz7PhgI) - Scholar Tech
|
||||
* [E-commerce App with Flutter & Dart‏](https://www.youtube.com/playlist?list=PL0vtyWBHY2NXpW_Hazx7jCYqwVlwe7SYk) - Tarek Alabd
|
||||
* [Flutter & Dart Bootcamp For Beginners‏](https://www.youtube.com/playlist?list=PL0vtyWBHY2NXQ9PxbZV8ixhIRirs8WCt_) - Tarek Alabd
|
||||
* [Flutter بالعربى](https://www.youtube.com/playlist?list=PLMDrOnfT8EAhsiJwkzspHp_Ob6oRCHxv0) - Asem Saafan
|
||||
* [Flutter Advanced Complete Course - بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_ucnfkI-_yNRCOTI-yJa5N-a) - Omar Ahmed
|
||||
* [Flutter BLoC - بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_ufA0GYYjlx_R4smekKH_AuB) - Omar Ahmed
|
||||
* [Mastering Firebase And Flutter version 2 (2021) - Course - project -فلاتر- مشروع - دورة - فايربيز - شرح - احتراف - كورس](https://www.youtube.com/playlist?list=PL93xoMrxRJIve-GSKU61X6okh5pncG0sH) - Wael Abu hamza
|
||||
* [State Management in Flutter‏](https://www.youtube.com/playlist?list=PL0vtyWBHY2NUxuaEebvtZ6GNGScR9J2QI) - Tarek Alabd
|
||||
* [Advanced Flutter Tutorial - build E commerce App‏](https://www.youtube.com/playlist?list=PLGVaNq6mHiniedDoXJd35XFBNvJAoq-xe) - Scholar Tech‏
|
||||
* [Best Flutter Course For Beginner in Arabic\| ‏افضل دوره فلاتر بالعربي](https://www.youtube.com/playlist?list=PLGVaNq6mHinjCPki-3xraQdGWKVz7PhgI) - Scholar Tech‏
|
||||
* [E-commerce App with Flutter & Dart‏](https://www.youtube.com/playlist?list=PL0vtyWBHY2NXpW_Hazx7jCYqwVlwe7SYk) - Tarek Alabd‏
|
||||
* [Flutter & Dart Bootcamp For Beginners‏](https://www.youtube.com/playlist?list=PL0vtyWBHY2NXQ9PxbZV8ixhIRirs8WCt_) - Tarek Alabd‏
|
||||
* [Flutter ‏بالعربى](https://www.youtube.com/playlist?list=PLMDrOnfT8EAhsiJwkzspHp_Ob6oRCHxv0) - Asem Saafan‏
|
||||
* [Flutter Advanced Complete Course - ‏بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_ucnfkI-_yNRCOTI-yJa5N-a) - Omar Ahmed‏
|
||||
* [Flutter BLoC - ‏بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_ufA0GYYjlx_R4smekKH_AuB) - Omar Ahmed‏
|
||||
* [Mastering Firebase And Flutter version 2 (2021) - Course - project ‏-فلاتر- مشروع - دورة - فايربيز - شرح - احتراف - كورس](https://www.youtube.com/playlist?list=PL93xoMrxRJIve-GSKU61X6okh5pncG0sH) - Wael Abu hamza‏
|
||||
* [State Management in Flutter‏](https://www.youtube.com/playlist?list=PL0vtyWBHY2NUxuaEebvtZ6GNGScR9J2QI) - Tarek Alabd‏
|
||||
|
||||
|
||||
### Game Development
|
||||
|
||||
* [شرح محرك الألعاب Godot‏](https://www.youtube.com/playlist?list=PLqBd9au_wtU3eX7mLVuLLOt9sfbDWlJsq) - Ahmed Mo'nis
|
||||
* [Godot - تعلم الأساسيات لتصميم الألعاب](https://www.youtube.com/playlist?list=PLXUEZFpQn01Hp06m0MxlMzj8x5Y2n9Dek) - SpriteSheet
|
||||
* [Godot Engine‏](https://www.youtube.com/playlist?list=PLU8IixMdsBbm7qblHP6rEENpOPK0SAxes) - Whales State
|
||||
* [Unity 2D Game‏](https://www.youtube.com/playlist?list=PLltZRmsFXWnLp98IIM1CISQYWowq87YSp) - 6wrni
|
||||
* [Unity 3D Game‏](https://www.youtube.com/playlist?list=PLltZRmsFXWnKk5F3_ltKWKq6lZLveotIF) - 6wrni
|
||||
* [شرح محرك الألعاب Godot‏](https://www.youtube.com/playlist?list=PLqBd9au_wtU3eX7mLVuLLOt9sfbDWlJsq) - Ahmed Mo'nis‏
|
||||
* [Godot -‏ تعلم الأساسيات لتصميم الألعاب](https://www.youtube.com/playlist?list=PLXUEZFpQn01Hp06m0MxlMzj8x5Y2n9Dek) - SpriteSheet‏
|
||||
* [Godot Engine‏](https://www.youtube.com/playlist?list=PLU8IixMdsBbm7qblHP6rEENpOPK0SAxes) - Whales State‏
|
||||
* [Unity 2D Game‏](https://www.youtube.com/playlist?list=PLltZRmsFXWnLp98IIM1CISQYWowq87YSp) - 6wrni‏
|
||||
* [Unity 3D Game‏](https://www.youtube.com/playlist?list=PLltZRmsFXWnKk5F3_ltKWKq6lZLveotIF) - 6wrni‏
|
||||
|
||||
|
||||
### Git
|
||||
|
||||
* [Basic course for Git](https://www.youtube.com/playlist?list=PLYyqC4bNbCIeCHLTRtwdLpQvle_zIavZ-) - أكاديمية ترميز
|
||||
* [Git & Github in Arabic \| Git & Github كورس تعلم](https://www.youtube.com/playlist?list=PL_aOZuct6oAogr4UMkWddU7leOXw0QKJS) - Khalid Elshafie
|
||||
* [Git and Github‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAw4eOj58MZPakHjaO3frVMF) - Elzero Web School
|
||||
* [Git and GitHub \| شخبط وانت متطمن ](https://www.youtube.com/watch?v=Q6G-J54vgKc&t=3162s&pp=ygUMZ2l0IGJpZyBkYXRh) - Ahmed Sami
|
||||
* [Git GitHub & Bitbucket‏](https://www.youtube.com/playlist?list=PL1FWK-sgJ9elQBDq5EtQ8AJFTlfqCJfEX) - Bashir Pro
|
||||
* [GitHub - تعلم العمل المشترك على](https://www.youtube.com/playlist?list=PLF8OvnCBlEY0CRqKiYKwOtrH-75MGIuyM) - TheNewBaghdad
|
||||
* [Learn Git in Arabic‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOYVfQs_NFNyykcqkaJ_plmK) - Algorithm Academy
|
||||
* [Git & Github in Arabic \| Git & Github‏ كورس تعلم](https://www.youtube.com/playlist?list=PL_aOZuct6oAogr4UMkWddU7leOXw0QKJS) - Khalid Elshafie‏
|
||||
* [Git and Github‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAw4eOj58MZPakHjaO3frVMF) - Elzero Web School‏
|
||||
* [Git and GitHub \|‏ شخبط وانت متطمن ](https://www.youtube.com/watch?v=Q6G-J54vgKc&t=3162s&pp=ygUMZ2l0IGJpZyBkYXRh) - Ahmed Sami‏
|
||||
* [Git GitHub & Bitbucket‏](https://www.youtube.com/playlist?list=PL1FWK-sgJ9elQBDq5EtQ8AJFTlfqCJfEX) - Bashir Pro‏
|
||||
* [GitHub -‏ تعلم العمل المشترك على](https://www.youtube.com/playlist?list=PLF8OvnCBlEY0CRqKiYKwOtrH-75MGIuyM) - TheNewBaghdad‏
|
||||
* [Learn Git in Arabic‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOYVfQs_NFNyykcqkaJ_plmK) - Algorithm Academy‏
|
||||
|
||||
|
||||
### HTML and CSS
|
||||
|
||||
* [برمجة المواقع \| تعلم لغة الhtml من الصفر](https://www.youtube.com/playlist?list=PLYyqC4bNbCIfMY5CoGmiWaPi9l86qaz5B) - أكاديمية ترميز
|
||||
* [برمجة المواقع \| سلسلة دروس لغة css](https://www.youtube.com/playlist?list=PLYyqC4bNbCIdES52srHE6xTiIgvgMkBWu) - أكاديمية ترميز
|
||||
* [كورس CSS3 بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY7e-LGHKT1LUrQOBZheSQLh) - Mobarmg
|
||||
* [كورس HTML من الصفر](https://www.youtube.com/playlist?list=PLoP3S2S1qTfCVIETOGwaK3lyaL3UKu403) - OctuCode
|
||||
* [كورس HTML5 بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY76fLdWZt7T8FfVHpvu0zOm) - Mobarmg
|
||||
* [CSS Art Tutorials‏](https://www.youtube.com/playlist?list=PLuXY3ddo_8nzxCiht69IlCe0_VeIuh4ty) - Codezilla
|
||||
* [HTML And CSS Template 1‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAzHSjcR-HnW9tnxyuye8KbF) - Elzero Web School
|
||||
* [HTML And CSS Template 2‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAy1l-2A21ng3gxEyocruT0t) - Elzero Web School
|
||||
* [HTML And CSS Template 3‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxuCSp2_-9LurPqRVwketnc) - Elzero Web School
|
||||
* [HTML Crash Course Tutorials for Beginners: HTML كامل للمبتدئين](https://www.youtube.com/watch?v=rytA8dLsSV8) - Mohammed Elzanaty
|
||||
* [Learn CSS In Arabic 2021‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAzjsz06gkzlSrlev53MGIKe) - Elzero Web School
|
||||
* [Learn HTML In Arabic 2021‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAw_t_XWUFbBX-c9MafPk9ji) - Elzero Web School
|
||||
* [Learn SASS In Arabic 2021‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAzlpyFHOaB3b-eubmF0TAV2) - Elzero Web School
|
||||
* [Learn Web Design From Scratch - HTML‏](https://www.youtube.com/playlist?list=PLsECTUuTGe7oVwBXceqGWfpZQtdYz8hEh) - Techs Experts
|
||||
* [Sass‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAz6bF7qObm2a1mLN_WHAWQo) - Elzero Web School
|
||||
* [Sass - Create a website‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAz9sluuyOWPifXvySgrGma8) - Elzero Web School
|
||||
* [Tailwind CSS‏](https://www.youtube.com/playlist?list=PLnD96kXp-_pMR9cBUmvsz_kIIt9bv2UIP) - Ag Coding
|
||||
* [برمجة المواقع \| تعلم لغة الhtml‏ من الصفر](https://www.youtube.com/playlist?list=PLYyqC4bNbCIfMY5CoGmiWaPi9l86qaz5B) - أكاديمية ترميز
|
||||
* [برمجة المواقع \| سلسلة دروس لغة css‏](https://www.youtube.com/playlist?list=PLYyqC4bNbCIdES52srHE6xTiIgvgMkBWu) - أكاديمية ترميز
|
||||
* [كورس CSS3‏ بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY7e-LGHKT1LUrQOBZheSQLh) - Mobarmg‏
|
||||
* [كورس HTML‏ من الصفر](https://www.youtube.com/playlist?list=PLoP3S2S1qTfCVIETOGwaK3lyaL3UKu403) - OctuCode‏
|
||||
* [كورس HTML5‏ بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY76fLdWZt7T8FfVHpvu0zOm) - Mobarmg‏
|
||||
* [CSS Art Tutorials‏](https://www.youtube.com/playlist?list=PLuXY3ddo_8nzxCiht69IlCe0_VeIuh4ty) - Codezilla‏
|
||||
* [HTML And CSS Template 1‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAzHSjcR-HnW9tnxyuye8KbF) - Elzero Web School‏
|
||||
* [HTML And CSS Template 2‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAy1l-2A21ng3gxEyocruT0t) - Elzero Web School‏
|
||||
* [HTML And CSS Template 3‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxuCSp2_-9LurPqRVwketnc) - Elzero Web School‏
|
||||
* [HTML Crash Course Tutorials for Beginners: HTML‏ كامل للمبتدئين](https://www.youtube.com/watch?v=rytA8dLsSV8) - Mohammed Elzanaty‏
|
||||
* [Learn CSS In Arabic 2021‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAzjsz06gkzlSrlev53MGIKe) - Elzero Web School‏
|
||||
* [Learn HTML In Arabic 2021‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAw_t_XWUFbBX-c9MafPk9ji) - Elzero Web School‏
|
||||
* [Learn SASS In Arabic 2021‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAzlpyFHOaB3b-eubmF0TAV2) - Elzero Web School‏
|
||||
* [Learn Web Design From Scratch - HTML‏](https://www.youtube.com/playlist?list=PLsECTUuTGe7oVwBXceqGWfpZQtdYz8hEh) - Techs Experts‏
|
||||
* [Sass‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAz6bF7qObm2a1mLN_WHAWQo) - Elzero Web School‏
|
||||
* [Sass - Create a website‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAz9sluuyOWPifXvySgrGma8) - Elzero Web School‏
|
||||
* [Tailwind CSS‏](https://www.youtube.com/playlist?list=PLnD96kXp-_pMR9cBUmvsz_kIIt9bv2UIP) - Ag Coding‏
|
||||
|
||||
|
||||
### Java
|
||||
|
||||
* [Java - بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_ucgIJOLT2KH5aQ9tt-sXyQ9) - Omar Ahmed
|
||||
* [Java - ‏بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_ucgIJOLT2KH5aQ9tt-sXyQ9) - Omar Ahmed‏
|
||||
* [JAVA Course Level 1 Basics By Arabic](https://www.youtube.com/playlist?list=PLnzqK5HvcpwTgEDztQ8y4K4-VoeoK1QCG) - محمد شوشان
|
||||
* [JAVA For Beginners - Course 1 - in Arabic](https://www.youtube.com/playlist?list=PL1DUmTEdeA6K7rdxKiWJq6JIxTvHalY8f) - محمد الدسوقى
|
||||
* [Java FX‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN1ISKdFo23inpSYyzXWrGDm) - Khalid ESSAADANI
|
||||
* [Java Programming - Eng. Marwa Radwan‏](https://www.youtube.com/playlist?list=PLsECTUuTGe7okDiRTQjUOilwYssOyx-t4) - Techs Experts
|
||||
* [JAVA Programming Course Level 2 Object Oriented Programming By Arabic](https://www.youtube.com/playlist?list=PLnzqK5HvcpwQp6zaFd7o728neR1XhPvid) - محمد شوشان
|
||||
* [JAVA Programming Course Level 3 Graphic User Interface By Arabic](https://www.youtube.com/playlist?list=PLnzqK5HvcpwRhWDkdkM4jSTPW3CgxKH8G) - محمد شوشان
|
||||
* [JAVA Programming Course Level 4 Connect Database and JAVA By Arabic](https://www.youtube.com/playlist?list=PLnzqK5HvcpwTmQTPK54W95WyNzT-33MR0) - محمد شوشان
|
||||
* [JAVA Programming Full Project by Arabic (uni_staff project) \|(المشروع الختامي بالجافا كاملا بشرح عربي )](https://www.youtube.com/playlist?list=PLnzqK5HvcpwQbsAGChtjlNPLVv6kTEXRG) - محمد شوشان
|
||||
* [Java SE 8 Core Features‏](https://www.youtube.com/playlist?list=PLEBRPBUkZ4mZ-5ziYzaoK1leOLYHpqPXJ) - FCI-Career-Build
|
||||
* [Java Tutorial for beginners- full course -تعلم البرمجة- جافا](https://www.youtube.com/playlist?list=PLwAjM63H9bRuXIojpKDei4dVLRcvqP8V7) - genial code
|
||||
* [Learn JAVA Programming From Scratch In Arabic‏](https://www.youtube.com/playlist?list=PLCInYL3l2AajYlZGzU_LVrHdoouf8W6ZN) - Adel Nasim
|
||||
* [Object-Oriented Programming JAVA in Arabic‏](https://www.youtube.com/playlist?list=PLCInYL3l2AagY7fFlhCrjpLiIFybW3yQv) - Adel Nasim
|
||||
* [OOP - بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_ue7GPvoG_Ko1x43tZw5cz9v) - Omar Ahmed
|
||||
* [Programming 2 - Object Oriented Programming With Java](https://www.youtube.com/playlist?list=PL1DUmTEdeA6Icttz-O9C3RPRF8R8Px5vk) - محمد الدسوقى
|
||||
* [Java FX‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN1ISKdFo23inpSYyzXWrGDm) - Khalid ESSAADANI‏
|
||||
* [Java Programming - Eng. Marwa Radwan‏](https://www.youtube.com/playlist?list=PLsECTUuTGe7okDiRTQjUOilwYssOyx-t4) - Techs Experts‏
|
||||
* [JAVA Programming Course Level 2 Object Oriented Programming By Arabic](https://www.youtube.com/playlist?list=PLnzqK5HvcpwQp6zaFd7o728neR1XhPvid) - ‏محمد شوشان
|
||||
* [JAVA Programming Course Level 3 Graphic User Interface By Arabic](https://www.youtube.com/playlist?list=PLnzqK5HvcpwRhWDkdkM4jSTPW3CgxKH8G) - ‏محمد شوشان
|
||||
* [JAVA Programming Course Level 4 Connect Database and JAVA By Arabic](https://www.youtube.com/playlist?list=PLnzqK5HvcpwTmQTPK54W95WyNzT-33MR0) - ‏محمد شوشان
|
||||
* [JAVA Programming Full Project by Arabic (uni_staff project) \| ‏(المشروع الختامي بالجافا كاملا بشرح عربي)‎](https://www.youtube.com/playlist?list=PLnzqK5HvcpwQbsAGChtjlNPLVv6kTEXRG) - ‏محمد شوشان
|
||||
* [Java SE 8 Core Features‏](https://www.youtube.com/playlist?list=PLEBRPBUkZ4mZ-5ziYzaoK1leOLYHpqPXJ) - FCI-Career-Build‏
|
||||
* [Java Tutorial for beginners- full course‏ -تعلم البرمجة- جافا](https://www.youtube.com/playlist?list=PLwAjM63H9bRuXIojpKDei4dVLRcvqP8V7) - genial code‏
|
||||
* [Learn JAVA Programming From Scratch In Arabic‏](https://www.youtube.com/playlist?list=PLCInYL3l2AajYlZGzU_LVrHdoouf8W6ZN) - Adel Nasim‏
|
||||
* [Object-Oriented Programming JAVA in Arabic‏](https://www.youtube.com/playlist?list=PLCInYL3l2AagY7fFlhCrjpLiIFybW3yQv) - Adel Nasim‏
|
||||
* [OOP -‏ بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_ue7GPvoG_Ko1x43tZw5cz9v) - Omar Ahmed‏
|
||||
* [Programming 2 - Object Oriented Programming With Java](https://www.youtube.com/playlist?list=PL1DUmTEdeA6Icttz-O9C3RPRF8R8Px5vk) - ‏محمد الدسوقى
|
||||
|
||||
|
||||
### JavaScript
|
||||
|
||||
* [سلسلة دروس جافا سكريبت](https://www.youtube.com/playlist?list=PLYyqC4bNbCIeLEjcSPO61bsGPKEvYceb0) - أكاديمية ترميز
|
||||
* [كورس جافا سكريبت كامل \| Javascript Tutorial‏](https://www.youtube.com/playlist?list=PLknwEmKsW8OuTqUDaFRBiAViDZ5uI3VcE) - Abdelrahman Gamal
|
||||
* [كورس Ajax بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY7wv9ZZkhH7lZELpz_fP81N) - Mobarmg
|
||||
* [كورس ES6 بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY5nQxWH0HaNibR9UXKICWxz) - Mobarmg
|
||||
* [Arabic JavaScript‏](https://www.youtube.com/playlist?list=PLL2zWZTDFZzgU2x6Kk6w0qx5piLgMODsm) - KMR Script
|
||||
* [Arabic JavaScript ES6 الاصدار السادس من الجافاسكربت](https://www.youtube.com/playlist?list=PLL2zWZTDFZzilx_LJ_mCRDETtDOyBg0UT) - KMR Script
|
||||
* [Complete Intro to Javascript‏](https://www.youtube.com/playlist?list=PLLWuK602vNiU-kIpNuw5Z7HRbV4pBaHlL) - Mohammed Elzanaty
|
||||
* [Design Patterns \| javascript \| [Arabic]‏](https://www.youtube.com/playlist?list=PLS-MrzRLZtmduTfp_bReagQKg7I-GVr-5) - Shadow Coding
|
||||
* [ECMAScript 6 Tutorial In Arabic‏](https://www.youtube.com/playlist?list=PLLWuK602vNiVnYxkrT7qbFSictc9nJeiX) - Mohammed Elzanaty
|
||||
* [Friday js‏](https://www.youtube.com/playlist?list=PLQtNtS-WfRa_PU_wiKETaFk6nAVrNBg7l) - codeZone
|
||||
* [HTML \| CSS \| JavaScript \| Project‏](https://www.youtube.com/playlist?list=PLS-MrzRLZtmflgWiToSs6jNwYaFK7FnWM) - Shadow Coding
|
||||
* [Javascript‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAw6p0z0Ek0OjPzeXoqlFlCh) - Elzero Web School
|
||||
* [JavaScript AJAX‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAytfRIdMIkLeoQHP0o5uWBa) - Elzero Web School
|
||||
* [JavaScript Application‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAz7_BgzvNcOaE-m_SnE4jiT) - Elzero Web School
|
||||
* [JavaScript Canvas‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxdetco1wwicE7Fbm73UYy0) - Elzero Web School
|
||||
* [JavaScript ECMAScript 6‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAy3siU1b04xY24ZlstofO9M) - Elzero Web School
|
||||
* [كورس جافا سكريبت كامل \| Javascript Tutorial‏](https://www.youtube.com/playlist?list=PLknwEmKsW8OuTqUDaFRBiAViDZ5uI3VcE) - Abdelrahman Gamal‏
|
||||
* [كورس Ajax‏ بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY7wv9ZZkhH7lZELpz_fP81N) - Mobarmg‏
|
||||
* [كورس ES6‏ بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY5nQxWH0HaNibR9UXKICWxz) - Mobarmg‏
|
||||
* [Arabic JavaScript‏](https://www.youtube.com/playlist?list=PLL2zWZTDFZzgU2x6Kk6w0qx5piLgMODsm) - KMR Script‏
|
||||
* [Arabic JavaScript ES6‏ الاصدار السادس من الجافاسكربت](https://www.youtube.com/playlist?list=PLL2zWZTDFZzilx_LJ_mCRDETtDOyBg0UT) - KMR Script‏
|
||||
* [Complete Intro to Javascript‏](https://www.youtube.com/playlist?list=PLLWuK602vNiU-kIpNuw5Z7HRbV4pBaHlL) - Mohammed Elzanaty‏
|
||||
* [Design Patterns \| javascript \| [Arabic]‏](https://www.youtube.com/playlist?list=PLS-MrzRLZtmduTfp_bReagQKg7I-GVr-5) - Shadow Coding‏
|
||||
* [ECMAScript 6 Tutorial In Arabic‏](https://www.youtube.com/playlist?list=PLLWuK602vNiVnYxkrT7qbFSictc9nJeiX) - Mohammed Elzanaty‏
|
||||
* [Friday js‏](https://www.youtube.com/playlist?list=PLQtNtS-WfRa_PU_wiKETaFk6nAVrNBg7l) - codeZone‏
|
||||
* [HTML \| CSS \| JavaScript \| Project‏](https://www.youtube.com/playlist?list=PLS-MrzRLZtmflgWiToSs6jNwYaFK7FnWM) - Shadow Coding‏
|
||||
* [Javascript‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAw6p0z0Ek0OjPzeXoqlFlCh) - Elzero Web School‏
|
||||
* [JavaScript AJAX‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAytfRIdMIkLeoQHP0o5uWBa) - Elzero Web School‏
|
||||
* [JavaScript Application‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAz7_BgzvNcOaE-m_SnE4jiT) - Elzero Web School‏
|
||||
* [JavaScript Canvas‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxdetco1wwicE7Fbm73UYy0) - Elzero Web School‏
|
||||
* [JavaScript ECMAScript 6‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAy3siU1b04xY24ZlstofO9M) - Elzero Web School‏
|
||||
* [JavaScript Files API](https://www.youtube.com/playlist?list=PLrvHCesHYw38480FPUmm3l2iJd8jSmA5u) - برمجيات حسان
|
||||
* [JavaScript JSON API‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAwH_PyuEFjk3OvXflJJrDRQ) - Elzero Web School
|
||||
* [JavaScript OOP‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAzLyvrWPwMw6bbBlTwPxgLF) - Elzero Web School
|
||||
* [Javascript Tips And Tricks [Arabic]‏](https://www.youtube.com/playlist?list=PLQtNtS-WfRa8Y47rtUnKXewgaBsXD-9KT) - codeZone
|
||||
* [Javascript Tutorial \| كورس جافا سكريبت كامل](https://www.youtube.com/playlist?list=PLknwEmKsW8OuTqUDaFRBiAViDZ5uI3VcE) - Abdelrahman Gamal
|
||||
* [JavaScript Unit Testing With Jest‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAwSrfBPERTnCmWAbcMAwG9O) - Elzero Web School
|
||||
* [Learn JavaScript in Arabic 2021‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAx3kiplQR_oeDqLDBUDYwVv) - Elzero Web School
|
||||
* [Software Testing Course in Arabic - بالعربي software testing شرح](https://www.youtube.com/playlist?list=PLzNfs-3kBUJllCa8_6pLYDMnIlg6Lfvu4) - Tresmerge
|
||||
* [SOLID Principles In Arabic‏](https://www.youtube.com/playlist?list=PLQtNtS-WfRa9Dwu0xHfC0gALHCdia6L6w) - codeZone
|
||||
* [JavaScript JSON API‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAwH_PyuEFjk3OvXflJJrDRQ) - Elzero Web School‏
|
||||
* [JavaScript OOP‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAzLyvrWPwMw6bbBlTwPxgLF) - Elzero Web School‏
|
||||
* [Javascript Tips And Tricks [Arabic]‏](https://www.youtube.com/playlist?list=PLQtNtS-WfRa8Y47rtUnKXewgaBsXD-9KT) - codeZone‏
|
||||
* [Javascript Tutorial \|‏ كورس جافا سكريبت كامل](https://www.youtube.com/playlist?list=PLknwEmKsW8OuTqUDaFRBiAViDZ5uI3VcE) - Abdelrahman Gamal‏
|
||||
* [JavaScript Unit Testing With Jest‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAwSrfBPERTnCmWAbcMAwG9O) - Elzero Web School‏
|
||||
* [Learn JavaScript in Arabic 2021‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAx3kiplQR_oeDqLDBUDYwVv) - Elzero Web School‏
|
||||
* [Software Testing Course in Arabic -‏ بالعربي software testing‏ شرح](https://www.youtube.com/playlist?list=PLzNfs-3kBUJllCa8_6pLYDMnIlg6Lfvu4) - Tresmerge‏
|
||||
* [SOLID Principles In Arabic‏](https://www.youtube.com/playlist?list=PLQtNtS-WfRa9Dwu0xHfC0gALHCdia6L6w) - codeZone‏
|
||||
|
||||
|
||||
#### Gulp.js
|
||||
|
||||
* [Automatic Your Work With Gulpjs‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxyli7mXgNBhkRB-zgSHvL8) - Elzero Web School
|
||||
* [Basic of Gulp.js‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOaj10GLKu2YAcDQAMRvUgp0) - Algorithm Academy
|
||||
* [Gulp.js - Workshop‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOYXLQlBhKkc2bYIczytBc73) - Algorithm Academy
|
||||
* [Automatic Your Work With Gulpjs‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxyli7mXgNBhkRB-zgSHvL8) - Elzero Web School‏
|
||||
* [Basic of Gulp.js‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOaj10GLKu2YAcDQAMRvUgp0) - Algorithm Academy‏
|
||||
* [Gulp.js - Workshop‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOYXLQlBhKkc2bYIczytBc73) - Algorithm Academy‏
|
||||
|
||||
|
||||
#### jQuery
|
||||
|
||||
* [كورس JQuery بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY5CmY-9Td8GhlLnq9GuJmpB) - Mobarmg
|
||||
* [Basic of jQuery‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAwXDFEEpc8TT6MFbDAC5XNB) - Elzero Web School
|
||||
* [jQuery - Practical Examples and Create Apps‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAz0_Ujf9ZB9KceUzzSVYDci) - Elzero Web School
|
||||
* [JQuery In Arabic - Web Development‏](https://www.youtube.com/playlist?list=PLHIfW1KZRIfll3ObMFi02Ry7oRU3MJVRG) - Hassouna Academy
|
||||
* [كورس JQuery‏ بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY5CmY-9Td8GhlLnq9GuJmpB) - Mobarmg‏
|
||||
* [Basic of jQuery‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAwXDFEEpc8TT6MFbDAC5XNB) - Elzero Web School‏
|
||||
* [jQuery - Practical Examples and Create Apps‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAz0_Ujf9ZB9KceUzzSVYDci) - Elzero Web School‏
|
||||
* [JQuery In Arabic - Web Development‏](https://www.youtube.com/playlist?list=PLHIfW1KZRIfll3ObMFi02Ry7oRU3MJVRG) - Hassouna Academy‏
|
||||
|
||||
|
||||
#### Nest.js
|
||||
|
||||
[كورس Nest JS في ٣ ساعات \| Type ORM - MySql DB - Modules - Dependency Injection](https://www.youtube.com/watch?v=RwOxUg2rsjY) - أكاديمية ترميز
|
||||
[Learn Nestjs Framework ( بالعربي )](https://www.youtube.com/playlist?list=PLDQ11FgmbqQP1aaCCiU74LzebvZjY_S4G) - Index Academy - اتعلم برمجة بالعربي
|
||||
[Nestjs‏](https://www.youtube.com/playlist?list=PLOldSEMXUdZsFAEJwxYkE83dhm1ZkWEOL) - Mahmoud Abdullah
|
||||
[NestJS - Progressive Node.js framework‏](https://www.youtube.com/playlist?list=PLMYF6NkLrdN_5_pwGSQt2OXLDMMXpeotD) - Muhammed Essa
|
||||
* [كورس Nest JS‏ في ٣ ساعات \| Type ORM - MySql DB - Modules - Dependency Injection‏](https://www.youtube.com/watch?v=RwOxUg2rsjY) - أكاديمية ترميز
|
||||
* [Learn Nestjs Framework‏ ( بالعربي )](https://www.youtube.com/playlist?list=PLDQ11FgmbqQP1aaCCiU74LzebvZjY_S4G) - Index Academy -‏ اتعلم برمجة بالعربي
|
||||
* [Nestjs‏](https://www.youtube.com/playlist?list=PLOldSEMXUdZsFAEJwxYkE83dhm1ZkWEOL) - Mahmoud Abdullah‏
|
||||
* [NestJS - Progressive Node.js framework‏](https://www.youtube.com/playlist?list=PLMYF6NkLrdN_5_pwGSQt2OXLDMMXpeotD) - Muhammed Essa‏
|
||||
|
||||
|
||||
#### NodeJS
|
||||
|
||||
* [كورس MongoDB بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY6ZTH5cneI_S0Bzzj-4j082) - Mobarmg
|
||||
* [كورس NodeJS بالعربي -ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY5S0IMTxqCb41fF8RDBQZ_w) - Mobarmg
|
||||
* [Arabic Dive into Node JS Development الغوص في النود جي اس](https://www.youtube.com/playlist?list=PLL2zWZTDFZzgxxD66mv95I8hC0pby5bdp) - KMR Script
|
||||
* [JWT Authentication using Node, Express, Typescript, Jasmine & Postgres‏](https://www.youtube.com/playlist?list=PLLWuK602vNiVLQ4rAylfIkqp3rkN0TuPD) - Mohammed Elzanaty
|
||||
* [Learn Basic of NodeJS‏](https://www.youtube.com/playlist?list=PLGhZWewM_75LQf3KvHo6HHSclmDyDazl7) - Emam Academy
|
||||
* [Learn NodeJS from zero to hero‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOa3EiUpjO04DVxEE9Ox12ta) - Algorithm Academy
|
||||
* [NodeJS - Build a Full E-Commerce RESTful APIs (بالعربي)](https://www.youtube.com/playlist?list=PLDQ11FgmbqQNFuGQTKbAIGEyOKWUGBs6i) - Programming Solutions - Academy
|
||||
* [NodeJS - From Zero To Hero](https://www.youtube.com/playlist?list=PLkzDzmo9y3VG_pByjuxE7uuLYvmWgfBub) - تخاريف مبرمج
|
||||
* [NodeJS Advanced Topics](https://www.youtube.com/playlist?list=PLkzDzmo9y3VETa2XvIch29djB47v4zJQS) - تخاريف مبرمج
|
||||
* [NodeJS Course (2017 - عربي)](https://www.youtube.com/playlist?list=PLrvHCesHYw38kFL6w-i6Rv85oS3L0sp-o) - برمجيات حسان
|
||||
* [NodeJS Create App‏](https://www.youtube.com/playlist?list=PLGhZWewM_75KPLx2otaSE4eBSYqiHmEmh) - Emam Academy
|
||||
* [NodeJS Express‏](https://www.youtube.com/playlist?list=PLGhZWewM_75J0BZL_jSwuYxIm9m9S_NZw) - Emam Academy
|
||||
* [Pre NodeJS Course‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY4KgXU42KUgbCpyluuEc4uk) - Mobarmg
|
||||
* [REST API Node.js‏](https://www.youtube.com/playlist?list=PLGhZWewM_75ILwl15d0Cn-W_XHpnKbNHL) - Emam Academy
|
||||
* [كورس MongoDB‏ بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY6ZTH5cneI_S0Bzzj-4j082) - Mobarmg‏
|
||||
* [كورس NodeJS‏ بالعربي -ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY5S0IMTxqCb41fF8RDBQZ_w) - Mobarmg‏
|
||||
* [Arabic Dive into Node JS Development‏ الغوص في النود جي اس](https://www.youtube.com/playlist?list=PLL2zWZTDFZzgxxD66mv95I8hC0pby5bdp) - KMR Script‏
|
||||
* [JWT Authentication using Node, Express, Typescript, Jasmine & Postgres‏](https://www.youtube.com/playlist?list=PLLWuK602vNiVLQ4rAylfIkqp3rkN0TuPD) - Mohammed Elzanaty‏
|
||||
* [Learn Basic of NodeJS‏](https://www.youtube.com/playlist?list=PLGhZWewM_75LQf3KvHo6HHSclmDyDazl7) - Emam Academy‏
|
||||
* [Learn NodeJS from zero to hero‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOa3EiUpjO04DVxEE9Ox12ta) - Algorithm Academy‏
|
||||
* [NodeJS - Build a Full E-Commerce RESTful APIs‏ (بالعربي)](https://www.youtube.com/playlist?list=PLDQ11FgmbqQNFuGQTKbAIGEyOKWUGBs6i) - Programming Solutions - Academy‏
|
||||
* [NodeJS - From Zero To Hero‏](https://www.youtube.com/playlist?list=PLkzDzmo9y3VG_pByjuxE7uuLYvmWgfBub) - تخاريف مبرمج
|
||||
* [NodeJS Advanced Topics‏](https://www.youtube.com/playlist?list=PLkzDzmo9y3VETa2XvIch29djB47v4zJQS) - تخاريف مبرمج
|
||||
* [NodeJS Course (2017 -‏ عربي)](https://www.youtube.com/playlist?list=PLrvHCesHYw38kFL6w-i6Rv85oS3L0sp-o) - برمجيات حسان
|
||||
* [NodeJS Create App‏](https://www.youtube.com/playlist?list=PLGhZWewM_75KPLx2otaSE4eBSYqiHmEmh) - Emam Academy‏
|
||||
* [NodeJS Express‏](https://www.youtube.com/playlist?list=PLGhZWewM_75J0BZL_jSwuYxIm9m9S_NZw) - Emam Academy‏
|
||||
* [Pre NodeJS Course‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY4KgXU42KUgbCpyluuEc4uk) - Mobarmg‏
|
||||
* [REST API Node.js‏](https://www.youtube.com/playlist?list=PLGhZWewM_75ILwl15d0Cn-W_XHpnKbNHL) - Emam Academy‏
|
||||
|
||||
|
||||
#### Nuxt.js
|
||||
|
||||
* [Nuxt.js Course‏](https://www.youtube.com/playlist?list=PLLXntwspGdhCBdax1ZJTEX6Gg5vCwOSUL) - Mahmoud Zohdi \- محمود زهدي
|
||||
* [Nuxt.js Course‏](https://www.youtube.com/playlist?list=PLLXntwspGdhCBdax1ZJTEX6Gg5vCwOSUL) - Mahmoud Zohdi \- ‏محمود زهدي
|
||||
|
||||
|
||||
#### PugJs
|
||||
|
||||
* [Learn PugJs‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxckfbgAzwwxeoeBfi0y724) - Elzero Web School
|
||||
* [Learn PugJs‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxckfbgAzwwxeoeBfi0y724) - Elzero Web School‏
|
||||
|
||||
|
||||
#### React.js
|
||||
|
||||
* [Learn React JS Tutorial \|\| React دورة كاملة لتعلم الـ](https://www.youtube.com/playlist?list=PLtFbQRDJ11kEjXWZmwkOV-vfXmrEEsuEW) - Unique Coderz Academy
|
||||
* [React JS A JavaScript library دورة](https://www.youtube.com/playlist?list=PLMYF6NkLrdN9YuSgcD3TvNowTbMrI_hh8) - Muhammed Essa
|
||||
* [React.js‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNObRCqeYOws_JK_CCGCmQv_l) - Algorithm Academy
|
||||
* [React.js Hooks‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOZ5-WwSSWYLp0kC8xxE46YG) - Algorithm Academy
|
||||
* [React.js Todo App‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOYKXNTPUiZw8X7dDIgsSZln) - Algorithm Academy
|
||||
* [ReactJS](https://www.youtube.com/playlist?list=PLCInYL3l2AahiYaPBNh6YtI9NifuG8SqT) - Adel Nasim
|
||||
* [ReactJS - Advanced [تعلم رياكت ]](https://www.youtube.com/playlist?list=PLejc1JbD4ZFTiDCCVu_uCW0GXqyvhtbf8) - kimz codes
|
||||
* [ReactJs-Build Full E-Commerce From Scratch Redux (بالعربي)](https://www.youtube.com/playlist?list=PLDQ11FgmbqQPRui5VDCSQvYt2HOYiCVep) - Programming Solutions - Academy
|
||||
* [ReactJS Part 1 - Learn React Hooks by Project [تعلم الرياكت هوكس] [الجزء الاول]](https://www.youtube.com/playlist?list=PLejc1JbD4ZFSaQIFNstRIrbm_fqb12Q59) - kimz codes
|
||||
* [ReactJS Part 2 - UseEffect & UseRef - working with API and Prev State [Arabic] [بالعربي][الجزء الثاني]](https://www.youtube.com/playlist?list=PLejc1JbD4ZFQa9YDF5pzB4JFbJovh3TN9) - kimz codes
|
||||
* [ReactJS Part 3 - Performance Optimization (react memo, use memo, use call back) [تعلم الرياكت] [الجزء الثالث]](https://www.youtube.com/playlist?list=PLejc1JbD4ZFTYdkjzqYBujf7UCVQyn_aq) - kimz codes
|
||||
* [ReactJS with zanaty‏](https://www.youtube.com/playlist?list=PLLWuK602vNiUmNPrv9szscXzENArzQHAe) - Mohammed Elzanaty
|
||||
* [Redux ToolKit 2021/2022 part 4 [شرح Redux toolkit] [تعلم Redux] [شرح Redux]](https://www.youtube.com/playlist?list=PLejc1JbD4ZFREfrBoSl8tjAPZOY6HNqZv) - kimz codes
|
||||
* [Redux ToolKit Project, Book Store project [تعلم Redux toolkit]](https://www.youtube.com/playlist?list=PLejc1JbD4ZFQFvS469VXyCPO_py_kvVD5) - kimz codes
|
||||
* [Learn React JS Tutorial \|\| React‏ دورة كاملة لتعلم الـ](https://www.youtube.com/playlist?list=PLtFbQRDJ11kEjXWZmwkOV-vfXmrEEsuEW) - Unique Coderz Academy‏
|
||||
* [React JS A JavaScript library‏ دورة](https://www.youtube.com/playlist?list=PLMYF6NkLrdN9YuSgcD3TvNowTbMrI_hh8) - Muhammed Essa‏
|
||||
* [React.js‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNObRCqeYOws_JK_CCGCmQv_l) - Algorithm Academy‏
|
||||
* [React.js Hooks‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOZ5-WwSSWYLp0kC8xxE46YG) - Algorithm Academy‏
|
||||
* [React.js Todo App‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOYKXNTPUiZw8X7dDIgsSZln) - Algorithm Academy‏
|
||||
* [ReactJS‏](https://www.youtube.com/playlist?list=PLCInYL3l2AahiYaPBNh6YtI9NifuG8SqT) - Adel Nasim‏
|
||||
* [ReactJS - Advanced‏ [تعلم رياكت ]](https://www.youtube.com/playlist?list=PLejc1JbD4ZFTiDCCVu_uCW0GXqyvhtbf8) - kimz codes‏
|
||||
* [ReactJs-Build Full E-Commerce From Scratch Redux‏ (بالعربي)](https://www.youtube.com/playlist?list=PLDQ11FgmbqQPRui5VDCSQvYt2HOYiCVep) - Programming Solutions - Academy‏
|
||||
* [ReactJS Part 1 - Learn React Hooks by Project‏ [تعلم الرياكت هوكس] [الجزء الاول]](https://www.youtube.com/playlist?list=PLejc1JbD4ZFSaQIFNstRIrbm_fqb12Q59) - kimz codes‏
|
||||
* [ReactJS Part 2 - UseEffect & UseRef - working with API and Prev State [Arabic]‏ [بالعربي][الجزء الثاني]](https://www.youtube.com/playlist?list=PLejc1JbD4ZFQa9YDF5pzB4JFbJovh3TN9) - kimz codes‏
|
||||
* [ReactJS Part 3 - Performance Optimization (react memo, use memo, use call back)‏ [تعلم الرياكت] [الجزء الثالث]](https://www.youtube.com/playlist?list=PLejc1JbD4ZFTYdkjzqYBujf7UCVQyn_aq) - kimz codes‏
|
||||
* [ReactJS with zanaty‏](https://www.youtube.com/playlist?list=PLLWuK602vNiUmNPrv9szscXzENArzQHAe) - Mohammed Elzanaty‏
|
||||
* [Redux ToolKit 2021/2022 part 4‏ [شرح Redux toolkit] [تعلم Redux] [شرح Redux]](https://www.youtube.com/playlist?list=PLejc1JbD4ZFREfrBoSl8tjAPZOY6HNqZv) - kimz codes‏
|
||||
* [Redux ToolKit Project, Book Store project‏ [تعلم Redux toolkit]](https://www.youtube.com/playlist?list=PLejc1JbD4ZFQFvS469VXyCPO_py_kvVD5) - kimz codes‏
|
||||
|
||||
|
||||
#### Vue.js
|
||||
|
||||
* [Basic of Vue.js‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxr5AqK3Yz4DWYKVSmIFziw) - Elzero Web School
|
||||
* [Vue.js Apps and Practical examples‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAzDuaT7kEURZQbw9dQHepK9) - Elzero Web School
|
||||
* [Vue.js Composition API‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOZiOnKcf00l1NWC-xz-TV0h) - Algorithm Academy
|
||||
* [Vue.js Router Tutorial‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNObtw2FtE4_eX_k9yCf-Fcd3) - Algorithm Academy
|
||||
* [Basic of Vue.js‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxr5AqK3Yz4DWYKVSmIFziw) - Elzero Web School‏
|
||||
* [Vue.js Apps and Practical examples‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAzDuaT7kEURZQbw9dQHepK9) - Elzero Web School‏
|
||||
* [Vue.js Composition API‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOZiOnKcf00l1NWC-xz-TV0h) - Algorithm Academy‏
|
||||
* [Vue.js Router Tutorial‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNObtw2FtE4_eX_k9yCf-Fcd3) - Algorithm Academy‏
|
||||
|
||||
|
||||
### Machine Learning
|
||||
|
||||
* [01 machine learning تعليم الآلة , القسم الأول : مقدمة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5Vf1RAHyBo4tRzT8lEavPhR) - Hesham Asem
|
||||
* [02 تعليم الآلة , القسم الثاني : التوقع Machine learning , Regression‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5UJE2PbY7UU4SHi7UpV1mXo) - Hesham Asem
|
||||
* [03 تعليم الآلة , القسم الثالث : بايثون Machine learning , Python‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5UM-FWfQeF1_YhMMa12Eg3s) - Hesham Asem
|
||||
* [04 القسم الرابع : التصنيف Classification & Logistic Regression‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5Uq7PkI_PWOm_DLC2CFvSzU) - Hesham Asem
|
||||
* [05 القسم الخامس : الشبكات العصبية Neural Network‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5UX-Yi32r925nsgW-3GrnSa) - Hesham Asem
|
||||
* [06 القسم السادس : نظام الدعم الآلي SVM‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5U98PPtkc34sg7EEGC34WRs) - Hesham Asem
|
||||
* [07 القسم السابع : التعليم بدون إشراف Unsupervised ML‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5VEygzpmG1GZgI8l1xwPDBP) - Hesham Asem
|
||||
* [08 القسم الثامن : مواضيع هامة في تعليم الآلة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5UnONA8-ENhR0NE04mIllqB) - Hesham Asem
|
||||
* [09 القسم التاسع : تكنيكات حديثة في تعليم الآلة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XJKEXITqCNQN8209q3qlrL) - Hesham Asem
|
||||
* [10 القسم العاشر : مكتبة سايكيتليرن Sklearn Library‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5X_9JeJh1xeciAbkijvc09k) - Hesham Asem
|
||||
* [11 القسم الحادي عشر : تنسر فلو و كيراس TensorFlow & Keras‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5VbuU2T0gS_mFhCpKmLxvCP) - Hesham Asem
|
||||
* [12 القسم الثاني عشر : تطبيقات عملية من كاجل و جيتهاب Kaggle & Github‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XA13ZqfacovmyOLjYwwhMt) - Hesham Asem
|
||||
* [13 ML Helper Tutorials برنامج المساعد في تعليم الآلة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5VdA0sd-nLM0LMzhfivfwmu) - Hesham Asem
|
||||
* [Introduction to Machine Learning‏](https://www.youtube.com/playlist?list=PL5JZLxl_tFCdOXYNVz7Wl7XyFR67q658r) - Khaled Mostafa Elsayed
|
||||
* [01 machine learning ‏تعليم الآلة , القسم الأول : مقدمة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5Vf1RAHyBo4tRzT8lEavPhR) - Hesham Asem‏
|
||||
* [02 ‏تعليم الآلة , القسم الثاني : التوقع Machine learning , Regression‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5UJE2PbY7UU4SHi7UpV1mXo) - Hesham Asem‏
|
||||
* [03 ‏تعليم الآلة , القسم الثالث : بايثون Machine learning , Python‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5UM-FWfQeF1_YhMMa12Eg3s) - Hesham Asem‏
|
||||
* [04 ‏القسم الرابع : التصنيف Classification & Logistic Regression‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5Uq7PkI_PWOm_DLC2CFvSzU) - Hesham Asem‏
|
||||
* [05 ‏القسم الخامس : الشبكات العصبية Neural Network‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5UX-Yi32r925nsgW-3GrnSa) - Hesham Asem‏
|
||||
* [06 ‏القسم السادس : نظام الدعم الآلي SVM‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5U98PPtkc34sg7EEGC34WRs) - Hesham Asem‏
|
||||
* [07 ‏القسم السابع : التعليم بدون إشراف Unsupervised ML‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5VEygzpmG1GZgI8l1xwPDBP) - Hesham Asem‏
|
||||
* [08 ‏القسم الثامن : مواضيع هامة في تعليم الآلة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5UnONA8-ENhR0NE04mIllqB) - Hesham Asem‏
|
||||
* [09 ‏القسم التاسع : تكنيكات حديثة في تعليم الآلة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XJKEXITqCNQN8209q3qlrL) - Hesham Asem‏
|
||||
* [10 ‏القسم العاشر : مكتبة سايكيتليرن Sklearn Library‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5X_9JeJh1xeciAbkijvc09k) - Hesham Asem‏
|
||||
* [11 ‏القسم الحادي عشر : تنسر فلو و كيراس TensorFlow & Keras‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5VbuU2T0gS_mFhCpKmLxvCP) - Hesham Asem‏
|
||||
* [12 ‏القسم الثاني عشر : تطبيقات عملية من كاجل و جيتهاب Kaggle & Github‏](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XA13ZqfacovmyOLjYwwhMt) - Hesham Asem‏
|
||||
* [13 ML Helper Tutorials ‏برنامج المساعد في تعليم الآلة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5VdA0sd-nLM0LMzhfivfwmu) - Hesham Asem‏
|
||||
* [Introduction to Machine Learning‏](https://www.youtube.com/playlist?list=PL5JZLxl_tFCdOXYNVz7Wl7XyFR67q658r) - Khaled Mostafa Elsayed‏
|
||||
|
||||
|
||||
## Microservice
|
||||
|
||||
* [Building Microservices‏](https://www.youtube.com/playlist?list=PLZafHDYyxnk5kALJAZKVAqjcJpG6ngsFq) - Mahmoud Youssef - محمود يوسف *(:construction: in process)*
|
||||
* [Microservice بالعربي](https://www.youtube.com/playlist?list=PLZd2bo_SbAm-LKJ_x_OuOZtuwEFqbJ5B7) - Ismail Anjrini
|
||||
* [Microservices Architecture in Arabic‏](https://www.youtube.com/playlist?list=PLgAqrVq84PDdfiDow3YVsgc1q34JD415Z) - Software Architecture Talks in Arabic
|
||||
* [Building Microservices‏](https://www.youtube.com/playlist?list=PLZafHDYyxnk5kALJAZKVAqjcJpG6ngsFq) - Mahmoud Youssef - ‏محمود يوسف *(:construction: in process)*
|
||||
* [Microservice‏ بالعربي](https://www.youtube.com/playlist?list=PLZd2bo_SbAm-LKJ_x_OuOZtuwEFqbJ5B7) - Ismail Anjrini‏
|
||||
* [Microservices Architecture in Arabic‏](https://www.youtube.com/playlist?list=PLgAqrVq84PDdfiDow3YVsgc1q34JD415Z) - Software Architecture Talks in Arabic‏
|
||||
|
||||
|
||||
### Natural Language Programming
|
||||
|
||||
* [21 NLP-01 مقدمة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XpTaCGcWlSx-hy8JcIxsU7) - Hesham Asem
|
||||
* [22 NLP-02 أساسيات المعالجة اللغوية الطبيعية](https://www.youtube.com/playlist?list=PL6-3IRz2XF5VFSRQLI7skbH8UPEdfCFBg) - Hesham Asem
|
||||
* [23 NLP-03 أدوات المعالجة اللغوية الطبيعية](https://www.youtube.com/playlist?list=PL6-3IRz2XF5WYpWu6Y8T3firJLflZ3Ufi) - Hesham Asem
|
||||
* [24 NLP-04 المعالجة البسيطة للنصوص](https://www.youtube.com/playlist?list=PL6-3IRz2XF5W7brQxe9RHNpHSeUTuz-V_) - Hesham Asem
|
||||
* [25 NLP-05 المعالجة المتقدمة للنصوص](https://www.youtube.com/playlist?list=PL6-3IRz2XF5W7QQ3mKJ1kldXpN3Vquzbc) - Hesham Asem
|
||||
* [26 NLP-06 تجميع البيانات](https://www.youtube.com/playlist?list=PL6-3IRz2XF5UsyOPThnWFKUzSkrQwQHJ0) - Hesham Asem
|
||||
* [27 NLP-07 الشبكات العصبية المتكررة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XZCwISqNQPFFns9bnx2wUG) - Hesham Asem
|
||||
* [28 NLP-08 تكنيكات حديثة في المعالجة اللغوية الطبيعية](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XHsUtAUid97yRi011KSDBZ) - Hesham Asem
|
||||
* [Convolutional Neural Network (CNN)‏](https://www.youtube.com/playlist?list=PL5JZLxl_tFCcKucpxtkwbneqAvHaPOCK6) - Khaled Mostafa Elsayed
|
||||
* [NLP-Transformers‏](https://www.youtube.com/playlist?list=PL5JZLxl_tFCd-ixMkn_CJPQhhQRFhZXjY) - Khaled Mostafa Elsayed
|
||||
* [21 NLP-01 ‏مقدمة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XpTaCGcWlSx-hy8JcIxsU7) - Hesham Asem‏
|
||||
* [22 NLP-02 ‏أساسيات المعالجة اللغوية الطبيعية](https://www.youtube.com/playlist?list=PL6-3IRz2XF5VFSRQLI7skbH8UPEdfCFBg) - Hesham Asem‏
|
||||
* [23 NLP-03 ‏أدوات المعالجة اللغوية الطبيعية](https://www.youtube.com/playlist?list=PL6-3IRz2XF5WYpWu6Y8T3firJLflZ3Ufi) - Hesham Asem‏
|
||||
* [24 NLP-04 ‏المعالجة البسيطة للنصوص](https://www.youtube.com/playlist?list=PL6-3IRz2XF5W7brQxe9RHNpHSeUTuz-V_) - Hesham Asem‏
|
||||
* [25 NLP-05 ‏المعالجة المتقدمة للنصوص](https://www.youtube.com/playlist?list=PL6-3IRz2XF5W7QQ3mKJ1kldXpN3Vquzbc) - Hesham Asem‏
|
||||
* [26 NLP-06 ‏تجميع البيانات](https://www.youtube.com/playlist?list=PL6-3IRz2XF5UsyOPThnWFKUzSkrQwQHJ0) - Hesham Asem‏
|
||||
* [27 NLP-07 ‏الشبكات العصبية المتكررة](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XZCwISqNQPFFns9bnx2wUG) - Hesham Asem‏
|
||||
* [28 NLP-08 ‏تكنيكات حديثة في المعالجة اللغوية الطبيعية](https://www.youtube.com/playlist?list=PL6-3IRz2XF5XHsUtAUid97yRi011KSDBZ) - Hesham Asem‏
|
||||
* [Convolutional Neural Network (CNN)‏](https://www.youtube.com/playlist?list=PL5JZLxl_tFCcKucpxtkwbneqAvHaPOCK6) - Khaled Mostafa Elsayed‏
|
||||
* [NLP-Transformers‏](https://www.youtube.com/playlist?list=PL5JZLxl_tFCd-ixMkn_CJPQhhQRFhZXjY) - Khaled Mostafa Elsayed‏
|
||||
|
||||
|
||||
### .NET
|
||||
|
||||
* [كورس ASP.NET MVC بالعربي -ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY4PrhxzVKb3lY6Ni9kgIMYH) - Mobarmg
|
||||
* [Arabic C# .NET‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN1ekZ78MzVWqpNyA5Lyb2nv) - Khalid ESSAADANI
|
||||
* [ASP.NET Core مقدمة في تعلم](https://www.youtube.com/playlist?list=PLX1bW_GeBRhAjpkPCTpKXJoFGe2ZpYGUC) - Codographia
|
||||
* [ASP.NET Core For Beginners‏](https://www.youtube.com/playlist?list=PLsV97AQt78NQ8E7cEqovH0zLYRJgJahGh) - Passionate Coders \| محمد المهدي
|
||||
* [ASP.NET Core Fundamentals‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN1zbN2olMzvIBXP06FIwoes) - Khalid ESSAADANI
|
||||
* [ASP.NET Core Long Videos‏](https://www.youtube.com/playlist?list=PLX1bW_GeBRhBUAlLChHYX3BmtU0NBe30-) - Codographia
|
||||
* [ASP.NET Identity‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN1T3fIb-JDa4xNFfVQoljGI) - Khalid ESSAADANI
|
||||
* [ASP.NET Identity Arabic‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN1T3fIb-JDa4xNFfVQoljGI) - Khalid ESSAADANI
|
||||
* [ASP.NET MVC 5‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN3HKfGd_jgO1Odr1xWXU9Yf) - Khalid ESSAADANI
|
||||
* [ASP.NET MVC From Scratch‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN2dz2C9ShCe9wTLrXxnJPuC) - Khalid ESSAADANI
|
||||
* [ASP.NET Web REST API‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN1X4QNF5wslJD6T96Owkg2t) - Khalid ESSAADANI
|
||||
* [كورس ASP.NET MVC بالعربي -ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY4PrhxzVKb3lY6Ni9kgIMYH) - Mobarmg‏
|
||||
* [Arabic C# .NET‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN1ekZ78MzVWqpNyA5Lyb2nv) - Khalid ESSAADANI‏
|
||||
* [ASP.NET Core‏ مقدمة في تعلم](https://www.youtube.com/playlist?list=PLX1bW_GeBRhAjpkPCTpKXJoFGe2ZpYGUC) - Codographia‏
|
||||
* [ASP.NET Core For Beginners‏](https://www.youtube.com/playlist?list=PLsV97AQt78NQ8E7cEqovH0zLYRJgJahGh) - Passionate Coders \|‏ محمد المهدي
|
||||
* [ASP.NET Core Fundamentals‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN1zbN2olMzvIBXP06FIwoes) - Khalid ESSAADANI‏
|
||||
* [ASP.NET Core Long Videos‏](https://www.youtube.com/playlist?list=PLX1bW_GeBRhBUAlLChHYX3BmtU0NBe30-) - Codographia‏
|
||||
* [ASP.NET Identity‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN1T3fIb-JDa4xNFfVQoljGI) - Khalid ESSAADANI‏
|
||||
* [ASP.NET Identity Arabic‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN1T3fIb-JDa4xNFfVQoljGI) - Khalid ESSAADANI‏
|
||||
* [ASP.NET MVC 5‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN3HKfGd_jgO1Odr1xWXU9Yf) - Khalid ESSAADANI‏
|
||||
* [ASP.NET MVC From Scratch‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN2dz2C9ShCe9wTLrXxnJPuC) - Khalid ESSAADANI‏
|
||||
* [ASP.NET Web REST API‏](https://www.youtube.com/playlist?list=PLwj1YcMhLRN1X4QNF5wslJD6T96Owkg2t) - Khalid ESSAADANI‏
|
||||
|
||||
|
||||
### Operating Systems
|
||||
|
||||
* [Linux System‏](https://www.youtube.com/playlist?list=PL8pYI62gCNsWTppELEUCpforC4avEiLox) - anahr
|
||||
* [Operating Systems - أنظمة التشغيل](https://www.youtube.com/playlist?list=PLxIvc-MGOs6ib0oK1z9C46DeKd9rRcSMY) - Ahmed Hagag
|
||||
* [Operating Systems - نظم التشغيل](https://www.youtube.com/playlist?list=PLMm8EjqH1EFV-jECqtMxeVMDoVkV_kJDY) - Ahmed Sallam
|
||||
* [Operating Systems in Arabic - شرح نظم التشغيل](https://www.youtube.com/playlist?list=PLTr1xN4uMK5seRz6IO7Am9Zp2UKdnzO_n) - Mohamed Alsayed
|
||||
* [Linux System‏](https://www.youtube.com/playlist?list=PL8pYI62gCNsWTppELEUCpforC4avEiLox) - anahr‏
|
||||
* [Operating Systems -‏ أنظمة التشغيل](https://www.youtube.com/playlist?list=PLxIvc-MGOs6ib0oK1z9C46DeKd9rRcSMY) - Ahmed Hagag‏
|
||||
* [Operating Systems -‏ نظم التشغيل](https://www.youtube.com/playlist?list=PLMm8EjqH1EFV-jECqtMxeVMDoVkV_kJDY) - Ahmed Sallam‏
|
||||
* [Operating Systems in Arabic -‏ شرح نظم التشغيل](https://www.youtube.com/playlist?list=PLTr1xN4uMK5seRz6IO7Am9Zp2UKdnzO_n) - Mohamed Alsayed‏
|
||||
|
||||
|
||||
### PHP
|
||||
|
||||
* [تصميم و برمجة موقع eCommerce by PHP‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxdiBh6J62wOzEnvC4CNuFU) - Elzero Web School
|
||||
* [دورة php من البداية الي الاحتراف](https://www.youtube.com/playlist?list=PLftLUHfDSiZ5LAQuaKUUpN8F_dvKTPEtc) - Mora Soft
|
||||
* [Arabic PHP‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAzH72MTPuAAaYfReraNlQgM) - Elzero Web School
|
||||
* [Design Patterns in PHP Arabic شرح بالعربي](https://www.youtube.com/playlist?app=desktop&list=PLdYYj2XLw5BnpInmR103TyVwFd_CLI6IS) - Ramy Hakam
|
||||
* [Learn Object Oriented PHP‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxXTPncg0W4lhVS32LO_xtQ) - Elzero Web School
|
||||
* [PHP Bootcamp 2022‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAy41u35AqJUrI-H83DObUDq) - Elzero Web School
|
||||
* [تصميم و برمجة موقع eCommerce by PHP‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxdiBh6J62wOzEnvC4CNuFU) - Elzero Web School‏
|
||||
* [دورة php‏ من البداية الي الاحتراف](https://www.youtube.com/playlist?list=PLftLUHfDSiZ5LAQuaKUUpN8F_dvKTPEtc) - Mora Soft‏
|
||||
* [Arabic PHP‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAzH72MTPuAAaYfReraNlQgM) - Elzero Web School‏
|
||||
* [Design Patterns in PHP Arabic‏ شرح بالعربي](https://www.youtube.com/playlist?app=desktop&list=PLdYYj2XLw5BnpInmR103TyVwFd_CLI6IS) - Ramy Hakam‏
|
||||
* [Learn Object Oriented PHP‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAxXTPncg0W4lhVS32LO_xtQ) - Elzero Web School‏
|
||||
* [PHP Bootcamp 2022‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAy41u35AqJUrI-H83DObUDq) - Elzero Web School‏
|
||||
|
||||
|
||||
#### Laravel
|
||||
|
||||
* [أحتراف لارافل بأنشاء متجر الكتروني متكامل متعدد التجار واللغات - laravel 7 multi vendor eCommerce complete projectl Laravel E-Commerce‏](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP6NeupdX_K9-Qm3ROqGud-t) - Professional Code
|
||||
* [تعليم لارافيل خطوة بخطوة من الصفر](https://www.youtube.com/watch?v=f6uQfOw2_6o) - Nour Homsi
|
||||
* [دورة انشاء برنامج المدارس Php - Laravel‏](https://www.youtube.com/playlist?list=PLftLUHfDSiZ7-RAsH8NskS7AYofykW_WN) - Mora Soft
|
||||
* [دورة انشاء برنامج فواتير php- laravel‏](https://www.youtube.com/playlist?list=PLftLUHfDSiZ7pKXkpGCoZATm5rF6msj5A) - Mora Soft
|
||||
* [دورة Laravel 6/7/8 PHP‏](https://www.youtube.com/playlist?list=PLMYF6NkLrdN8V2JKIMxqMsZNPsgUj3WOK) - Muhammed Essa
|
||||
* [كورس اساسيات لارافيل 9](https://www.youtube.com/playlist?list=PLftLUHfDSiZ4GfPZxaFDsA7ejUzD7SpWa) - Mora Soft
|
||||
* [لارافيل للمبتدئين](https://www.youtube.com/playlist?list=PLWCBAKY7-4buQazvDjeZhjLl54UqbF3lM) - Ahmed Abd El Ftah
|
||||
* [مشروع لارافل متجر الكتروني متعدد التجار واللغات متكامل - تطبيقات لارافل عمليه](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP7DCb-NamG2tt7uQUfxP2va) - Professional Code
|
||||
* [API-Course-For-Beginners‏](https://www.youtube.com/playlist?list=PLftLUHfDSiZ6MfN8UhhcXDhh64eejvIKK) - Mora Soft
|
||||
* [Build and deploy laravel realtime application on AWS for FREE (Arabic)‏](https://www.youtube.com/playlist?list=PL7IXur3gcVAT4wUbA3KpOSSDm3j_n-qw5) - Ibrahim Konsowa
|
||||
* [larave advanced - realtime notification - laravel chat - laravel firebse اشعارات الزمن الحقيقي و فاير بيز لارافل](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP5u3WilkVBz4s-uQtsy79eb) - Professional Code
|
||||
* [laravel + Vue.js complete tutorial - لارافل وفيو بمشروع تطبيق متكامل شرح](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP5NRdNtBfznKtFoEAuKEd2n) - Professional Code
|
||||
* [Laravel 8 payment gateway - الدفع الالكتروني باستخدام لارافل 8 - الدفع البنكي بلارافل](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP4wtrnHHJyf8a7E26I3ZrPG) - Professional Code
|
||||
* [Laravel 8 Tutorial - دورة لارافيل 8 باللغة العربية من الصفر الى الاحتراف](https://www.youtube.com/playlist?list=PLd4ZH7drWj7DAt5osYlsya3sscPoERtGC) - Mohammed Mustafa
|
||||
* [Laravel API Complete Tutorial -شرح laravel API- شرح API لارافل - كورس - شرح laravel api باملثة عملية](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP5e07XG-waxCb2kLq7M4J5m) - Professional Code
|
||||
* [Laravel Arabic Tutorial (بالعربي)](https://www.youtube.com/playlist?list=PL_aOZuct6oAoloeFcwrIy5w5fJ5rVOGG8) - Khalid Elshafie
|
||||
* [Laravel in Arabic Framework 2020 - شرح لارافل دوره لارافل بالعربي المتكاملة بمشروع متجر](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP4NNEikwx3wUAskQHB3p-LK) - Professional Code
|
||||
* [laravel websockets tutorial realtime notifications - chatting webscokets with node.js without any price‏](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP43uz7u3096X9QY4Gs_oAFt) - Professional Code
|
||||
* [Mastering Laravel‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAy_mAhY0x8cHf8oSGPKsEKP) - Elzero Web School
|
||||
* [Redis + Laravel 8 complete tutorial - لارافل ريدس \_ Redis queue with laravel- Redis caching with laravel‏](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP5CVYv0ABdApuYekWKcPNIT) - Professional Code
|
||||
* [أحتراف لارافل بأنشاء متجر الكتروني متكامل متعدد التجار واللغات - laravel 7 multi vendor eCommerce complete projectl Laravel E-Commerce‏](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP6NeupdX_K9-Qm3ROqGud-t) - Professional Code‏
|
||||
* [تعليم لارافيل خطوة بخطوة من الصفر](https://www.youtube.com/watch?v=f6uQfOw2_6o) - Nour Homsi‏
|
||||
* [دورة انشاء برنامج المدارس Php - Laravel‏](https://www.youtube.com/playlist?list=PLftLUHfDSiZ7-RAsH8NskS7AYofykW_WN) - Mora Soft‏
|
||||
* [دورة انشاء برنامج فواتير php- laravel‏](https://www.youtube.com/playlist?list=PLftLUHfDSiZ7pKXkpGCoZATm5rF6msj5A) - Mora Soft‏
|
||||
* [دورة Laravel 6/7/8 PHP‏](https://www.youtube.com/playlist?list=PLMYF6NkLrdN8V2JKIMxqMsZNPsgUj3WOK) - Muhammed Essa‏
|
||||
* [كورس اساسيات لارافيل ‏9](https://www.youtube.com/playlist?list=PLftLUHfDSiZ4GfPZxaFDsA7ejUzD7SpWa) - Mora Soft‏
|
||||
* [لارافيل للمبتدئين](https://www.youtube.com/playlist?list=PLWCBAKY7-4buQazvDjeZhjLl54UqbF3lM) - Ahmed Abd El Ftah‏
|
||||
* [مشروع لارافل متجر الكتروني متعدد التجار واللغات متكامل - تطبيقات لارافل عمليه](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP7DCb-NamG2tt7uQUfxP2va) - Professional Code‏
|
||||
* [API-Course-For-Beginners‏](https://www.youtube.com/playlist?list=PLftLUHfDSiZ6MfN8UhhcXDhh64eejvIKK) - Mora Soft‏
|
||||
* [Build and deploy laravel realtime application on AWS for FREE (Arabic)‏](https://www.youtube.com/playlist?list=PL7IXur3gcVAT4wUbA3KpOSSDm3j_n-qw5) - Ibrahim Konsowa‏
|
||||
* [larave advanced - realtime notification - laravel chat - laravel firebse‏ اشعارات الزمن الحقيقي و فاير بيز لارافل](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP5u3WilkVBz4s-uQtsy79eb) - Professional Code‏
|
||||
* [laravel + Vue.js complete tutorial -‏ لارافل وفيو بمشروع تطبيق متكامل شرح](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP5NRdNtBfznKtFoEAuKEd2n) - Professional Code‏
|
||||
* [Laravel 8 payment gateway -‏ الدفع الالكتروني باستخدام لارافل 8 - الدفع البنكي بلارافل](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP4wtrnHHJyf8a7E26I3ZrPG) - Professional Code‏
|
||||
* [Laravel 8 Tutorial -‏ دورة لارافيل 8 باللغة العربية من الصفر الى الاحتراف](https://www.youtube.com/playlist?list=PLd4ZH7drWj7DAt5osYlsya3sscPoERtGC) - Mohammed Mustafa‏
|
||||
* [Laravel API Complete Tutorial‏ -شرح laravel API-‏ شرح API‏ لارافل - كورس - شرح laravel api‏ باملثة عملية](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP5e07XG-waxCb2kLq7M4J5m) - Professional Code‏
|
||||
* [Laravel Arabic Tutorial‏ (بالعربي)](https://www.youtube.com/playlist?list=PL_aOZuct6oAoloeFcwrIy5w5fJ5rVOGG8) - Khalid Elshafie‏
|
||||
* [Laravel in Arabic Framework 2020 -‏ شرح لارافل دوره لارافل بالعربي المتكاملة بمشروع متجر](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP4NNEikwx3wUAskQHB3p-LK) - Professional Code‏
|
||||
* [laravel websockets tutorial realtime notifications - chatting webscokets with node.js without any price‏](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP43uz7u3096X9QY4Gs_oAFt) - Professional Code‏
|
||||
* [Mastering Laravel‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAy_mAhY0x8cHf8oSGPKsEKP) - Elzero Web School‏
|
||||
* [Redis + Laravel 8 complete tutorial - لارافل ريدس \_ Redis queue with laravel- Redis caching with laravel‏](https://www.youtube.com/playlist?list=PLCm7ZeRfGSP5CVYv0ABdApuYekWKcPNIT) - Professional Code‏
|
||||
|
||||
|
||||
### Prolog
|
||||
|
||||
* [Logic Programming - Prolog - برمجة منطقية](https://www.youtube.com/playlist?list=PLMm8EjqH1EFW9Faldu6D6Uh2j1EWWaTYe) - Ahmed Sallam
|
||||
* [Logic Programming - Prolog - ‏برمجة منطقية](https://www.youtube.com/playlist?list=PLMm8EjqH1EFW9Faldu6D6Uh2j1EWWaTYe) - Ahmed Sallam‏
|
||||
|
||||
|
||||
### Python
|
||||
|
||||
* [تعلم أساسيات البرمجة](https://www.youtube.com/playlist?list=PLvGNfY-tFUN8HRLDE-D2sXvIgYwspdmFE) - غريب الشيخ \|\| Ghareeb Elshaik
|
||||
* [قناة علم البيانات - حسام الحوراني](https://www.youtube.com/playlist?list=PLYW0LRZ3ePo6IYDS2K5IhmuP5qY3dmI9e) - Hussam Hourani
|
||||
* [كورس بايثون - تعلم بايثون من الصفر للإحتراف](https://www.youtube.com/playlist?list=PLoP3S2S1qTfCUdNazAZY1LFALcUr0Vbs9) - OctuCode
|
||||
* [كورس بايثون من الصفر \| سلسلة دروس لغة البايثون \| python](https://www.youtube.com/playlist?list=PLYyqC4bNbCIcxKO_r77w5MN1SRRnnfvNQ) - أكاديمية ترميز
|
||||
* [Learn Python3‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOazcliAXXivOrg9GiAVuoQg) - Algorithm Academy
|
||||
* [Master Python from Beginner to Advanced in Arabic - دورة تعلم بايثون من الصفر كاملة للمبتدئين](https://www.youtube.com/playlist?list=PLuXY3ddo_8nzrO74UeZQVZOb5-wIS6krJ) - Codezilla
|
||||
* [Mastering Python‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAyE_gei5d18qkfIe-Z8mocs) - Elzero Web School
|
||||
* [Mastering Python Tutorial - Python for Beginners \| كورس بايثون كامل للمبتدئين](https://www.youtube.com/playlist?list=PLknwEmKsW8OsG8dnisr_-2WGyx7lpgGEE) - Abdelrahman Gamal
|
||||
* [Object Oriented Programming - شرح البرمجة كائنية التوجه](https://www.youtube.com/playlist?list=PLuXY3ddo_8nzUrgCyaX_WEIJljx_We-c1) - Codezilla
|
||||
* [تعلم أساسيات البرمجة](https://www.youtube.com/playlist?list=PLvGNfY-tFUN8HRLDE-D2sXvIgYwspdmFE) - غريب الشيخ \|\| Ghareeb Elshaik‏
|
||||
* [قناة علم البيانات - حسام الحوراني](https://www.youtube.com/playlist?list=PLYW0LRZ3ePo6IYDS2K5IhmuP5qY3dmI9e) - Hussam Hourani‏
|
||||
* [كورس بايثون - تعلم بايثون من الصفر للإحتراف](https://www.youtube.com/playlist?list=PLoP3S2S1qTfCUdNazAZY1LFALcUr0Vbs9) - OctuCode‏
|
||||
* [كورس بايثون من الصفر \| سلسلة دروس لغة البايثون \| python‏](https://www.youtube.com/playlist?list=PLYyqC4bNbCIcxKO_r77w5MN1SRRnnfvNQ) - أكاديمية ترميز
|
||||
* [Learn Python3‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNOazcliAXXivOrg9GiAVuoQg) - Algorithm Academy‏
|
||||
* [Master Python from Beginner to Advanced in Arabic -‏ دورة تعلم بايثون من الصفر كاملة للمبتدئين](https://www.youtube.com/playlist?list=PLuXY3ddo_8nzrO74UeZQVZOb5-wIS6krJ) - Codezilla‏
|
||||
* [Mastering Python‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAyE_gei5d18qkfIe-Z8mocs) - Elzero Web School‏
|
||||
* [Mastering Python Tutorial - Python for Beginners \|‏ كورس بايثون كامل للمبتدئين](https://www.youtube.com/playlist?list=PLknwEmKsW8OsG8dnisr_-2WGyx7lpgGEE) - Abdelrahman Gamal‏
|
||||
* [Object Oriented Programming -‏ شرح البرمجة كائنية التوجه](https://www.youtube.com/playlist?list=PLuXY3ddo_8nzUrgCyaX_WEIJljx_We-c1) - Codezilla‏
|
||||
* [Python Beginners Tutorial](https://www.youtube.com/playlist?list=PL1DUmTEdeA6JCaY0EKssdqbiqq4sgRlUC) - محمد الدسوقي
|
||||
|
||||
|
||||
#### Django
|
||||
|
||||
* [Arabic Django‏](https://www.youtube.com/playlist?list=PLdZYzC8fohEKjuYyvITqYc2vL0lAWRvhs) - Elsafy Hegazy
|
||||
* [Django 2.x](https://www.youtube.com/playlist?list=PLTcPeoMjkuCxoyflbe4AuNWMZWulKVbr4) - شبكة علوم
|
||||
* [Django Create Blog](https://www.youtube.com/playlist?list=PLTcPeoMjkuCyoKpr6II_2aXUUOmtCDW4f) - شبكة علوم
|
||||
* [Django Tutorial for Beginners \| كورس دجانجو كامل للمبتدئين](https://www.youtube.com/playlist?list=PLknwEmKsW8OtK_n48UOuYGxJPbSFrICxm) - Abdelrahman Gamal
|
||||
* [Arabic Django‏](https://www.youtube.com/playlist?list=PLdZYzC8fohEKjuYyvITqYc2vL0lAWRvhs) - Elsafy Hegazy‏
|
||||
* [Django 2.x](https://www.youtube.com/playlist?list=PLTcPeoMjkuCxoyflbe4AuNWMZWulKVbr4) - ‏شبكة علوم
|
||||
* [Django Create Blog](https://www.youtube.com/playlist?list=PLTcPeoMjkuCyoKpr6II_2aXUUOmtCDW4f) - ‏شبكة علوم
|
||||
* [Django Tutorial for Beginners \|‏ كورس دجانجو كامل للمبتدئين](https://www.youtube.com/playlist?list=PLknwEmKsW8OtK_n48UOuYGxJPbSFrICxm) - Abdelrahman Gamal‏
|
||||
|
||||
|
||||
#### Flask
|
||||
|
||||
* [Flask‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNObFOYvkcNQG8arJX95TRE47) - Algorithm Academy
|
||||
* [Flask - Project‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNObli30BibPgVr_9JDDJ_0mZ) - Algorithm Academy
|
||||
* [Flask‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNObFOYvkcNQG8arJX95TRE47) - Algorithm Academy‏
|
||||
* [Flask - Project‏](https://www.youtube.com/playlist?list=PLfDx4cQoUNObli30BibPgVr_9JDDJ_0mZ) - Algorithm Academy‏
|
||||
|
||||
|
||||
### R
|
||||
|
||||
* [R Tutorial For Beginners](https://www.youtube.com/playlist?list=PL1DUmTEdeA6LKTMW3wrlT3GiFMCL_r_Sn) - محمد الدسوقي
|
||||
* [R Tutorial For Beginners](https://www.youtube.com/playlist?list=PL1DUmTEdeA6LKTMW3wrlT3GiFMCL_r_Sn) - ‏محمد الدسوقي
|
||||
|
||||
|
||||
### RabbitMQ
|
||||
|
||||
* [RabbitMQ بالعربي](https://www.youtube.com/playlist?list=PLZd2bo_SbAm9uJ2J5ryEOZV7ojLwGkATc) - Ismail Anjrini
|
||||
* [RabbitMQ‏ بالعربي](https://www.youtube.com/playlist?list=PLZd2bo_SbAm9uJ2J5ryEOZV7ojLwGkATc) - Ismail Anjrini‏
|
||||
|
||||
|
||||
### Redis
|
||||
|
||||
* [Redis بالعربي](https://www.youtube.com/playlist?list=PLZd2bo_SbAm_ijqLfnx94qkmytbWjUQ-h) - Ismail Anjrini
|
||||
* [Redis in 5 Minutes‏](https://www.youtube.com/playlist?list=PLZd2bo_SbAm-5J9eQ2cdOoyKAr_H2LxNY) - Ismail Anjrini
|
||||
* [Redis‏ بالعربي](https://www.youtube.com/playlist?list=PLZd2bo_SbAm_ijqLfnx94qkmytbWjUQ-h) - Ismail Anjrini‏
|
||||
* [Redis in 5 Minutes‏](https://www.youtube.com/playlist?list=PLZd2bo_SbAm-5J9eQ2cdOoyKAr_H2LxNY) - Ismail Anjrini‏
|
||||
|
||||
|
||||
### RegEx
|
||||
|
||||
* [التعابير النمطية \| REGEX‏](https://www.youtube.com/playlist?list=PLt0HRIA9i35v2W3JFiCIeUMC4GoD9titN) - Learn With Naw
|
||||
* [Crash Course - Regular Expression - Regex \| دورة مكثفة - التعابير النظامية](https://www.youtube.com/playlist?list=PLBPdtL8DZBZISjop48YSJ82FF-2uIhe-f) - Abdallah Alfaham • عبد الله الفحام
|
||||
* [Regular Expression tutorial - Arabic‏](https://www.youtube.com/playlist?list=PLwCMLs3sjOY4aVMg7hgQGHyQBZnHgFjJk) - Hard-Code
|
||||
* [التعابير النمطية \| REGEX‏](https://www.youtube.com/playlist?list=PLt0HRIA9i35v2W3JFiCIeUMC4GoD9titN) - Learn With Naw‏
|
||||
* [Crash Course - Regular Expression - Regex \|‏ دورة مكثفة - التعابير النظامية](https://www.youtube.com/playlist?list=PLBPdtL8DZBZISjop48YSJ82FF-2uIhe-f) - Abdallah Alfaham •‏ عبد الله الفحام
|
||||
* [Regular Expression tutorial - Arabic‏](https://www.youtube.com/playlist?list=PLwCMLs3sjOY4aVMg7hgQGHyQBZnHgFjJk) - Hard-Code‏
|
||||
|
||||
|
||||
### Software Architecture
|
||||
|
||||
* [Behavioral Design Patterns بالعربى](https://www.youtube.com/playlist?list=PLnqAlQ9hFYdex66Z6ViaYFQqvFD1C_G7j) - Mohammed Reda‏ *(:construction: in process)*
|
||||
* [Clean Code Book - بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_ufTMlXoJlQvImqz9wIfcWsX) - Omar Ahmed
|
||||
* [Creational Design Patterns بالعربى](https://www.youtube.com/playlist?list=PLnqAlQ9hFYdewk9UKGBcHLulZNUBpNSKJ) - Mohammed Reda
|
||||
* [Declarative Programming](https://www.youtube.com/playlist?list=PLpbZuj8hP-I6F-Zj1Ay8nQ1rMnmFnlK2f) - درة الاكواد لابن حماد
|
||||
* [Behavioral Design Patterns‏ بالعربى](https://www.youtube.com/playlist?list=PLnqAlQ9hFYdex66Z6ViaYFQqvFD1C_G7j) - Mohammed Reda‏ *(:construction: in process)*
|
||||
* [Clean Code Book -‏ بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_ufTMlXoJlQvImqz9wIfcWsX) - Omar Ahmed‏
|
||||
* [Creational Design Patterns‏ بالعربى](https://www.youtube.com/playlist?list=PLnqAlQ9hFYdewk9UKGBcHLulZNUBpNSKJ) - Mohammed Reda‏
|
||||
* [Declarative Programming](https://www.youtube.com/playlist?list=PLpbZuj8hP-I6F-Zj1Ay8nQ1rMnmFnlK2f) - ‏درة الاكواد لابن حماد
|
||||
* [Design patterns‏](https://www.youtube.com/playlist?list=PLIxq078xdGdYIo2Slyt4XvBElKDcTSgHM) - Nehal Elsamoly‏ *(:construction: in process)*
|
||||
* [Design Patterns‏](https://www.youtube.com/playlist?list=PLsV97AQt78NTrqUAZM562JbR3ljX19JFR) - Passionate Coders \| محمد المهدي *(:construction: in process)*
|
||||
* [Design Patterns - بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_uczNpsoKEEi7zHcuL07Otos) - Omar Ahmed‏ *(:construction: in process)*
|
||||
* [Software Design Patterns](https://www.youtube.com/playlist?app=desktop&list=PLrwRNJX9gLs3oQyBoXtYimY7M5aSF0_oC) - محمد يحيى
|
||||
* [SOLID Principles‏](https://www.youtube.com/playlist?list=PLZafHDYyxnk7fKmAuCJhWTMwJZ89f0Tug) - Mahmoud Youssef - محمود يوسف *(:construction: in process)*
|
||||
* [SOLID Principles‏](https://www.youtube.com/playlist?list=PLsV97AQt78NRT1GmH2EJ-o-2_ILFM9feq) - Passionate Coders \| محمد المهدي
|
||||
* [Solid Principles \| Uncle bob‏](https://www.youtube.com/playlist?list=PLINp1xZ5bPrqtE3Hee3vnyrHCaOyMADBt) - DevLoopers
|
||||
* [SOLID Principles بالعربى](https://www.youtube.com/playlist?list=PLnqAlQ9hFYdflFSS4NigVB7aSoYPNwHTL) - Mohammed Reda
|
||||
* [SOLID Principles بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_uevri_OpofVLXkRRFnZ7TSV) - Omar Ahmed
|
||||
* [Structural Design Patterns بالعربى](https://www.youtube.com/playlist?list=PLnqAlQ9hFYdcW3viz_oXRal_FNkg2Dssm) - Mohammed Reda
|
||||
* [Tennis Game Refactoring Kata‏](https://www.youtube.com/playlist?list=PLZafHDYyxnk7XNSOaQsb8GyeuGWk75WDy) - Mahmoud Youssef - محمود يوسف *(:construction: in process)*
|
||||
* [Write Better Code With Refactoring‏](https://www.youtube.com/playlist?list=PLZafHDYyxnk5h31weDexEeNtchOgqR2ji) - Mahmoud Youssef - محمود يوسف *(:construction: in process)*
|
||||
* [Design Patterns‏](https://www.youtube.com/playlist?list=PLsV97AQt78NTrqUAZM562JbR3ljX19JFR) - Passionate Coders \| ‏محمد المهدي *(:construction: in process)*
|
||||
* [Design Patterns -‏ بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_uczNpsoKEEi7zHcuL07Otos) - Omar Ahmed‏ *(:construction: in process)*
|
||||
* [Software Design Patterns‏](https://www.youtube.com/playlist?app=desktop&list=PLrwRNJX9gLs3oQyBoXtYimY7M5aSF0_oC) - محمد يحيى
|
||||
* [SOLID Principles‏](https://www.youtube.com/playlist?list=PLZafHDYyxnk7fKmAuCJhWTMwJZ89f0Tug) - Mahmoud Youssef -‏ محمود يوسف *(:construction: in process)*
|
||||
* [SOLID Principles‏](https://www.youtube.com/playlist?list=PLsV97AQt78NRT1GmH2EJ-o-2_ILFM9feq) - Passionate Coders \|‏ محمد المهدي
|
||||
* [Solid Principles \| Uncle bob‏](https://www.youtube.com/playlist?list=PLINp1xZ5bPrqtE3Hee3vnyrHCaOyMADBt) - DevLoopers‏
|
||||
* [SOLID Principles‏ بالعربى](https://www.youtube.com/playlist?list=PLnqAlQ9hFYdflFSS4NigVB7aSoYPNwHTL) - Mohammed Reda‏
|
||||
* [SOLID Principles‏ بالعربي](https://www.youtube.com/playlist?list=PLwWuxCLlF_uevri_OpofVLXkRRFnZ7TSV) - Omar Ahmed‏
|
||||
* [Structural Design Patterns‏ بالعربى](https://www.youtube.com/playlist?list=PLnqAlQ9hFYdcW3viz_oXRal_FNkg2Dssm) - Mohammed Reda‏
|
||||
* [Tennis Game Refactoring Kata‏](https://www.youtube.com/playlist?list=PLZafHDYyxnk7XNSOaQsb8GyeuGWk75WDy) - Mahmoud Youssef - ‏محمود يوسف *(:construction: in process)*
|
||||
* [Write Better Code With Refactoring‏](https://www.youtube.com/playlist?list=PLZafHDYyxnk5h31weDexEeNtchOgqR2ji) - Mahmoud Youssef - ‏محمود يوسف *(:construction: in process)*
|
||||
|
||||
|
||||
### TypeScript
|
||||
|
||||
* [Learn Typescript 2022‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAy532K9M_fjiAmrJ0gkCyLJ) - Elzero Web School
|
||||
* [Typescript Course For Javascript Developer‏](https://www.youtube.com/playlist?list=PLDQ11FgmbqQNDkXDd5SScLPqJM5w4Kgjc) - Programming Solutions - Academy
|
||||
* [typescript for angular developers [arabic tutorial]‏](https://www.youtube.com/playlist?list=PLQtNtS-WfRa-BC3yuZdzmAfVC7i5etLWb) - codeZone
|
||||
* [Learn Typescript 2022‏](https://www.youtube.com/playlist?list=PLDoPjvoNmBAy532K9M_fjiAmrJ0gkCyLJ) - Elzero Web School‏
|
||||
* [Typescript Course For Javascript Developer‏](https://www.youtube.com/playlist?list=PLDQ11FgmbqQNDkXDd5SScLPqJM5w4Kgjc) - Programming Solutions - Academy‏
|
||||
* [typescript for angular developers [arabic tutorial]‏](https://www.youtube.com/playlist?list=PLQtNtS-WfRa-BC3yuZdzmAfVC7i5etLWb) - codeZone‏
|
||||
* [TypeScript tutorial Arabic‏](https://www.youtube.com/playlist?list=PLF8OvnCBlEY27rEmxg4F86iFljMXyCmk1) - Hussein Al Rubaye‏
|
||||
|
||||
|
||||
#### Angular
|
||||
|
||||
* [كورس Angular 2 بالعربي](https://www.youtube.com/playlist?list=PLzCpl3aBwaY7eOwGMlps70dTYs2TSsgj1) - Mobarmg
|
||||
* [كورس AngularJS بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY43XfnAm-IRuXwtkp0kzpdt) - Mobarmg
|
||||
* [Angular 4+ [arabic tutorial]‏](https://www.youtube.com/playlist?list=PLQtNtS-WfRa8piCgv_buHpthEBXHaw0ss) - codeZone
|
||||
* [Arabic Angular 7 from A to R احتراف الانجولار](https://www.youtube.com/playlist?list=PLL2zWZTDFZzjSjy7yeJwpj2QkJd8NKo-O) - KMR Script‏
|
||||
* [Arabic Angular and Firebase App تطبيق انجولار وفايربيز](https://www.youtube.com/playlist?list=PLL2zWZTDFZzh2WEmc3fH_O4y4N05ZCqB2) - KMR Script‏
|
||||
* [كورس Angular 2‏ بالعربي](https://www.youtube.com/playlist?list=PLzCpl3aBwaY7eOwGMlps70dTYs2TSsgj1) - Mobarmg‏
|
||||
* [كورس AngularJS‏ بالعربي-ITI‏](https://www.youtube.com/playlist?list=PLzCpl3aBwaY43XfnAm-IRuXwtkp0kzpdt) - Mobarmg‏
|
||||
* [Angular 4+ [arabic tutorial]‏](https://www.youtube.com/playlist?list=PLQtNtS-WfRa8piCgv_buHpthEBXHaw0ss) - codeZone‏
|
||||
* [Arabic Angular 7 from A to R‏ احتراف الانجولار](https://www.youtube.com/playlist?list=PLL2zWZTDFZzjSjy7yeJwpj2QkJd8NKo-O) - KMR Script‏
|
||||
* [Arabic Angular and Firebase App‏ تطبيق انجولار وفايربيز](https://www.youtube.com/playlist?list=PLL2zWZTDFZzh2WEmc3fH_O4y4N05ZCqB2) - KMR Script‏
|
||||
* [Arabic NgRx (Angular + Redux)‏](https://www.youtube.com/playlist?list=PLL2zWZTDFZzhW10baUv1esvrowMwbfd5H) - KMR Script‏
|
||||
|
||||
|
||||
### iOS
|
||||
|
||||
* [iOS & Xcode دورة برمجة تطبيقات الايفون باستخدام لغة سويفت ](https://www.youtube.com/playlist?list=PLQaOY10EEc8bNbEBMyiJU1I-GIgs1LQfj) - بامبرمج
|
||||
* [<span dir="ltr">iOS & Xcode</span> دورة برمجة تطبيقات الايفون باستخدام لغة سويفت](https://www.youtube.com/playlist?list=PLQaOY10EEc8bNbEBMyiJU1I-GIgs1LQfj) - بامبرمج
|
||||
|
||||
|
||||
</div>
|
||||
|
@@ -1,3 +1,5 @@
|
||||
<div dir="rtl" markdown="1">
|
||||
|
||||
### Index
|
||||
|
||||
* [Ansible](#ansible)
|
||||
@@ -27,146 +29,149 @@
|
||||
|
||||
### Ansible
|
||||
|
||||
* [آموزش رایگان انسیبل](https://www.youtube.com/playlist?list=PLRMCwJJwWR1AKYcUkdcorTFR-bhXUN6oO) - Morteza Bashsiz
|
||||
* [آموزش رایگان انسیبل](https://www.youtube.com/playlist?list=PLRMCwJJwWR1AKYcUkdcorTFR-bhXUN6oO) - Morteza Bashsiz‏
|
||||
|
||||
|
||||
### Blockchain
|
||||
|
||||
* [دوره بلاک چین، رمزارزها و بیت کوین](https://www.youtube.com/playlist?list=PL-tKrPVkKKE1gLxAL-56H-XR-fTapqofC) - Jadi Mirmirani
|
||||
* [دوره بلاک چین، رمزارزها و بیت کوین](https://www.youtube.com/playlist?list=PL-tKrPVkKKE1gLxAL-56H-XR-fTapqofC) - Jadi Mirmirani‏
|
||||
|
||||
|
||||
### C
|
||||
|
||||
* [آموزش زبان C](https://toplearn.com/courses/3255/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86-%D8%B2%D8%A8%D8%A7%D9%86-c) - Mohammad Moein Bagh Sheikhi
|
||||
* [برنامه نویسی پیشرفته](https://maktabkhooneh.org/course/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D9%BE%DB%8C%D8%B4%D8%B1%D9%81%D8%AA%D9%87-mk187) - Ramtin Khosravi
|
||||
* [درس اصول برنامهنویسی سی و سی پلاس پلاس از دانشگاه صنعتی اصفهان](https://maktabkhooneh.org/course/%D8%A7%D8%B5%D9%88%D9%84-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-C-%D9%88-C-mk68) - Kiarash Bazargan
|
||||
* [آموزش زبان C‏](https://toplearn.com/courses/3255/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86-%D8%B2%D8%A8%D8%A7%D9%86-c) - Mohammad Moein Bagh Sheikhi‏
|
||||
* [برنامه نویسی پیشرفته](https://maktabkhooneh.org/course/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D9%BE%DB%8C%D8%B4%D8%B1%D9%81%D8%AA%D9%87-mk187) - Ramtin Khosravi‏
|
||||
* [درس اصول برنامهنویسی سی و سی پلاس پلاس از دانشگاه صنعتی اصفهان](https://maktabkhooneh.org/course/%D8%A7%D8%B5%D9%88%D9%84-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-C-%D9%88-C-mk68) - Kiarash Bazargan‏
|
||||
|
||||
|
||||
### <a id="csharp"></a>C\#
|
||||
|
||||
* [آموزش Asp.Net MVC به همراه پروژه عملی](https://toplearn.com/courses/web/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-AspNet-MVC-%D8%A8%D9%87-%D9%87%D9%85%D8%B1%D8%A7%D9%87-%D9%BE%D8%B1%D9%88%DA%98%D9%87-%D8%B9%D9%85%D9%84%DB%8C) - Iman Madaeny *(نیاز به ثبت نام دارد)*
|
||||
* [دوره مقدماتی دات نت 5 تحت وب](https://bugeto.net/courses/free-introductory-asp-dot-net-core-training-course) - Ehsan Babaei *(نیاز به ثبت نام دارد)*
|
||||
* [آموزش Asp.Net‎ MVC‏ به همراه پروژه عملی](https://toplearn.com/courses/web/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-AspNet-MVC-%D8%A8%D9%87-%D9%87%D9%85%D8%B1%D8%A7%D9%87-%D9%BE%D8%B1%D9%88%DA%98%D9%87-%D8%B9%D9%85%D9%84%DB%8C) - Iman Madaeny *(نیاز به ثبت نام دارد)*
|
||||
* [دوره مقدماتی دات نت 5‏ تحت وب](https://bugeto.net/courses/free-introductory-asp-dot-net-core-training-course) - Ehsan Babaei *(نیاز به ثبت نام دارد)*
|
||||
|
||||
|
||||
### Git
|
||||
|
||||
* [آموزش گیت، گیت هاب و گیت لب - فرادرس](https://faradars.org/courses/fvgit9609-git-github-gitlab) - Jadi Mirmirani *(نیاز به ثبت نام دارد)*
|
||||
* [آموزش گیت، گیت هاب و گیت لب - فرادرس](https://faradars.org/courses/fvgit9609-git-github-gitlab) - Jadi Mirmirani‏ *(نیاز به ثبت نام دارد)*
|
||||
|
||||
|
||||
### HTML and CSS
|
||||
|
||||
* [آموزش css](https://maktabkhooneh.org/course/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86-css-mk1265) - محمدحسین سیدآقایی
|
||||
* [آموزش html](https://maktabkhooneh.org/course/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86-html-mk1263) - محمدحسین سیدآقایی
|
||||
* [آموزش css‏](https://maktabkhooneh.org/course/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86-css-mk1265) - محمدحسین سیدآقایی
|
||||
* [آموزش html‏](https://maktabkhooneh.org/course/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86-html-mk1263) - محمدحسین سیدآقایی
|
||||
|
||||
|
||||
### Java
|
||||
|
||||
* [آموزش برنامهنویسی جاوا](https://javacup.ir/javacup-training-videos) - Java Cup
|
||||
* [آموزش برنامهنویسی جاوا](https://javacup.ir/javacup-training-videos) - Java Cup‏
|
||||
* [آموزش ديتابيس در جاوا](https://b2n.ir/j02632)
|
||||
* [برنامه نویسی پیشرفته(جاوا)](https://maktabkhooneh.org/course/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D9%BE%DB%8C%D8%B4%D8%B1%D9%81%D8%AA%D9%87-%D8%AC%D8%A7%D9%88%D8%A7-mk242) - Gholamali Nejad Hajali Irani
|
||||
* [برنامهنویسی حرفهای تحت وب در جاوا](https://maktabkhooneh.org/course/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D8%AD%D8%B1%D9%81%D9%87-%D8%A7%DB%8C-%D8%AA%D8%AD%D8%AA-%D9%88%D8%A8-%D8%AF%D8%B1-%D8%AC%D8%A7%D9%88%D8%A7-mk282) - Gholamali Nejad Hajali Irani
|
||||
* [برنامه نویسی پیشرفته(جاوا)](https://maktabkhooneh.org/course/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D9%BE%DB%8C%D8%B4%D8%B1%D9%81%D8%AA%D9%87-%D8%AC%D8%A7%D9%88%D8%A7-mk242) - Gholamali Nejad Hajali Irani‏
|
||||
* [برنامهنویسی حرفهای تحت وب در جاوا](https://maktabkhooneh.org/course/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D8%AD%D8%B1%D9%81%D9%87-%D8%A7%DB%8C-%D8%AA%D8%AD%D8%AA-%D9%88%D8%A8-%D8%AF%D8%B1-%D8%AC%D8%A7%D9%88%D8%A7-mk282) - Gholamali Nejad Hajali Irani‏
|
||||
|
||||
|
||||
### JavaScript
|
||||
|
||||
* [آموزش فارسی جاوا اسکریپت مقدماتی تا پیشرفته - JavaScript Tutorial](https://youtube.com/playlist?list=PLfbD3-Ao6cPpt5Y3Nkue_W-DrmdOLOaTH) - Mansour Kalagar
|
||||
* [دوره اموزشی جاوا اسکریپت از صفر](https://www.youtube.com/playlist?list=PLAt10Vana3Yctuu576LSxK6AiskBiWgOF) - Mehran Tarif (Silicium)
|
||||
* [آموزش فارسی جاوا اسکریپت مقدماتی تا پیشرفته - JavaScript Tutorial‏](https://youtube.com/playlist?list=PLfbD3-Ao6cPpt5Y3Nkue_W-DrmdOLOaTH) - Mansour Kalagar‏
|
||||
* [دوره اموزشی جاوا اسکریپت از صفر](https://www.youtube.com/playlist?list=PLAt10Vana3Yctuu576LSxK6AiskBiWgOF) - Mehran Tarif‏ (Silicium‏)
|
||||
|
||||
|
||||
#### React
|
||||
|
||||
* [ری اکت جی اس ۲۰۲۰](https://www.youtube.com/playlist?list=PL3Y-E4YSE4wZpWH8CXwPBI1F13KhkIDEx) - Amir Azimi
|
||||
* [ری اکت جی اس ۲۰۲۰](https://www.youtube.com/playlist?list=PL3Y-E4YSE4wZpWH8CXwPBI1F13KhkIDEx) - Amir Azimi‏
|
||||
|
||||
|
||||
#### Vue.js
|
||||
|
||||
* [آموزش Vue.js از صفر تا صد با 8 درس رایگان](https://sariasan.com/featured/vue-free-full-lessons) - میلاد حیدری
|
||||
* [آموزش Vue.js‎ از صفر تا صد با 8 درس رایگان](https://sariasan.com/featured/vue-free-full-lessons) - میلاد حیدری
|
||||
|
||||
|
||||
### Kotlin
|
||||
|
||||
* [آموزش کامل برنامه نویسی با کاتلین](https://www.youtube.com/watch?v=SwhXvaXx078) - Amirahmad Adibi
|
||||
* [دوره آموزشی کاتلین](https://mskm.ir/category/programming/kotlin/) - Mehrdad Dolatkhah
|
||||
* [دوره رایگان برنامه نویسی اندروید](https://www.youtube.com/playlist?list=PLoBWKLYZlNi7lecoeYXHC868ZH_AE1uXg) - Omid Sharifmehr
|
||||
* [آموزش کامل برنامه نویسی با کاتلین](https://www.youtube.com/watch?v=SwhXvaXx078) - Amirahmad Adibi‏
|
||||
* [دوره آموزشی کاتلین](https://mskm.ir/category/programming/kotlin/) - Mehrdad Dolatkhah‏
|
||||
* [دوره رایگان برنامه نویسی اندروید](https://www.youtube.com/playlist?list=PLoBWKLYZlNi7lecoeYXHC868ZH_AE1uXg) - Omid Sharifmehr‏
|
||||
|
||||
|
||||
### Linux
|
||||
|
||||
* [آموزش رایگان لینوکس](https://www.youtube.com/playlist?list=PLRMCwJJwWR1A3_ECuOqdIaR-XLnr6bDj_) - Morteza Bashsiz
|
||||
* [آموزش لینوکس برای آدم های شاد](https://www.youtube.com/playlist?list=PL-tKrPVkKKE2AniHDmp6zK9KGD1sjf0bd) - Jadi Mirmirani
|
||||
* [آموزش لینوکس مقدماتی](https://www.youtube.com/watch?v=ZwaBNkQKrts&list=PLPj7mSUQL4v_oVLO-2Q1QQ9fAH45u8z4A) - Hamid Emamian
|
||||
* [دوره الپیک ۱ - جادی \| LPIC-1 with Jadi](https://www.youtube.com/playlist?list=PL7ePwBdxM4nswZ62DvL58yJZ9W4-hOLLB) - Jadi Mirmirani
|
||||
* [آموزش رایگان لینوکس](https://www.youtube.com/playlist?list=PLRMCwJJwWR1A3_ECuOqdIaR-XLnr6bDj_) - Morteza Bashsiz‏
|
||||
* [آموزش لینوکس برای آدم های شاد](https://www.youtube.com/playlist?list=PL-tKrPVkKKE2AniHDmp6zK9KGD1sjf0bd) - Jadi Mirmirani‏
|
||||
* [آموزش لینوکس مقدماتی](https://www.youtube.com/watch?v=ZwaBNkQKrts&list=PLPj7mSUQL4v_oVLO-2Q1QQ9fAH45u8z4A) - Hamid Emamian‏
|
||||
* [دوره الپیک ۱ - جادی \| LPIC-1 with Jadi‏](https://www.youtube.com/playlist?list=PL7ePwBdxM4nswZ62DvL58yJZ9W4-hOLLB) - Jadi Mirmirani‏
|
||||
|
||||
|
||||
### Machine Learning
|
||||
|
||||
* [درس یادگیری ماشین دانشگاه استنفورد](https://maktabkhooneh.org/course/35-%DB%8C%D8%A7%D8%AF%DA%AF%DB%8C%D8%B1%DB%8C-%D9%85%D8%A7%D8%B4%DB%8C%D9%86-mk35) - Andrew Ng
|
||||
* [درس یادگیری ماشین دانشگاه صنعتی شریف](https://maktabkhooneh.org/course/273-%DB%8C%D8%A7%D8%AF%DA%AF%DB%8C%D8%B1%DB%8C-%D9%85%D8%A7%D8%B4%DB%8C%D9%86-mk273) - Mahdiyeh Soleymani
|
||||
* [درس یادگیری ماشین دانشگاه استنفورد](https://maktabkhooneh.org/course/35-%DB%8C%D8%A7%D8%AF%DA%AF%DB%8C%D8%B1%DB%8C-%D9%85%D8%A7%D8%B4%DB%8C%D9%86-mk35) - Andrew Ng‏
|
||||
* [درس یادگیری ماشین دانشگاه صنعتی شریف](https://maktabkhooneh.org/course/273-%DB%8C%D8%A7%D8%AF%DA%AF%DB%8C%D8%B1%DB%8C-%D9%85%D8%A7%D8%B4%DB%8C%D9%86-mk273) - Mahdiyeh Soleymani‏
|
||||
|
||||
|
||||
### Network
|
||||
|
||||
* [درک مقدماتی شبکه](https://www.youtube.com/playlist?list=PL-tKrPVkKKE00meXoxmIy6EgldK5XE-Z) - Jadi Mirmirani
|
||||
* [درک مقدماتی شبکه](https://www.youtube.com/playlist?list=PL-tKrPVkKKE00meXoxmIy6EgldK5XE-Z) - Jadi Mirmirani‏
|
||||
|
||||
|
||||
### PHP
|
||||
|
||||
* [آموزش پیاچپی - سکان آکادمی](https://sokanacademy.com/courses/php/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-PHP) - Behzad Moradi
|
||||
* [آموزش PHP - سبز دانش](https://sabzdanesh.com/php-tutorial/) - Omid Rajaei
|
||||
* [آموزش پیاچپی - سکان آکادمی](https://sokanacademy.com/courses/php/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-PHP) - Behzad Moradi‏
|
||||
* [آموزش PHP -‏ سبز دانش](https://sabzdanesh.com/php-tutorial/) - Omid Rajaei‏
|
||||
|
||||
|
||||
#### Codeigniter
|
||||
|
||||
* [طراحی وب Codeigniter](https://maktabkhooneh.org/course/%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C-%D9%88%D8%A8-Codeigniter-mk136)
|
||||
* [طراحی وب Codeigniter‏](https://maktabkhooneh.org/course/%D8%B7%D8%B1%D8%A7%D8%AD%DB%8C-%D9%88%D8%A8-Codeigniter-mk136)
|
||||
|
||||
|
||||
#### Laravel
|
||||
|
||||
* [آموزش لاراول](https://roocket.ir/series/learn-laravel) - Hesam Mousavi
|
||||
* [آموزش لاراول](http://www.alefyar.com/laravel-tutorial) - Abolfazl Talebi
|
||||
* [آموزش لاراول](https://roocket.ir/series/learn-laravel) - Hesam Mousavi‏
|
||||
* [آموزش لاراول](http://www.alefyar.com/laravel-tutorial) - Abolfazl Talebi‏
|
||||
|
||||
|
||||
#### Yii
|
||||
|
||||
* [آموزش yii framework 2](https://maktabkhooneh.org/course/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-yii-framework-2-mk205) - Mehrdad Seifzade
|
||||
* [آموزش yii framework 2‏](https://maktabkhooneh.org/course/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-yii-framework-2-mk205) - Mehrdad Seifzade‏
|
||||
|
||||
|
||||
### Python
|
||||
|
||||
* [آموزش پایتون رایگان (برنامه نویسی python از صفر)](https://sabzdanesh.com/python-tutorial/) - Omid Rajaei *(بههمراه کوئیز و تمرین بیشتر با ثبتنام رایگان)*
|
||||
* [دوره آموزش رایگان زبان پایتون ( Python ) از مقدماتی تا پیشرفته](https://toplearn.com/courses/2150/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-(-python-)) - Mohammad Ordokhani (TopLearn) *(نیاز به ثبت نام دارد)*
|
||||
* [دوره مقدماتی تا پیشترفته پایتون - کدتراپی](https://www.youtube.com/playlist?list=PLSMC8KtOWURqgm0c6iVXrGzK4ymzJUnfj) - CodeTherapy
|
||||
* [متخصص پایتون (Python)](https://sabzlearn.ir/course/python/) - Reza Davalit
|
||||
* [آموزش پایتون رایگان (برنامه نویسی python‏ از صفر)](https://sabzdanesh.com/python-tutorial/) - Omid Rajaei *(بههمراه کوئیز و تمرین بیشتر با ثبتنام رایگان)*
|
||||
* [دوره آموزش رایگان زبان پایتون ( Python )‏ از مقدماتی تا پیشرفته](https://toplearn.com/courses/2150/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86-%D9%BE%D8%A7%DB%8C%D8%AA%D9%88%D9%86-(-python-)) - Mohammad Ordokhani‏ (TopLearn‏) *(نیاز به ثبت نام دارد)*
|
||||
* [دوره مقدماتی تا پیشترفته پایتون - کدتراپی](https://www.youtube.com/playlist?list=PLSMC8KtOWURqgm0c6iVXrGzK4ymzJUnfj) - CodeTherapy‏
|
||||
* [متخصص پایتون (Python)‏](https://sabzlearn.ir/course/python/) - Reza Davalit‏
|
||||
|
||||
|
||||
### Django
|
||||
|
||||
* [آموزش مقدماتی Django Rest Framework (DRF)](https://www.youtube.com/playlist?list=PL7MXODW7Gj1eGnm4dXnydgqSDb3pLpg9v) - TorhamDev : Tech With Tori
|
||||
* [دوره اموزش جنگو مقدماتی تا پیشرفته](https://www.youtube.com/playlist?list=PLAt10Vana3YeAwS_LyLCeu7chml8eP8bh) - Mehran Tarif (Silicium)
|
||||
* [سوکت نویسی با کتابخانه جنگو چنلز](https://www.youtube.com/playlist?list=PLRU2zoAmuzJ2GD68st5SinXXv_Gv1lWRm) - Shahriar Shariati
|
||||
* [Django2 All In One Course - دوره کامل جنگو و مهندسی بک اند](https://www.youtube.com/playlist?list=PLGlWjLcdLyGyqEqh9rBQ-9toPsFeHWrMr) - Boby Cloud
|
||||
* [آموزش مقدماتی Django Rest Framework (DRF)‏](https://www.youtube.com/playlist?list=PL7MXODW7Gj1eGnm4dXnydgqSDb3pLpg9v) - TorhamDev : Tech With Tori‏
|
||||
* [دوره اموزش جنگو مقدماتی تا پیشرفته](https://www.youtube.com/playlist?list=PLAt10Vana3YeAwS_LyLCeu7chml8eP8bh) - Mehran Tarif‏ (Silicium‏)
|
||||
* [سوکت نویسی با کتابخانه جنگو چنلز](https://www.youtube.com/playlist?list=PLRU2zoAmuzJ2GD68st5SinXXv_Gv1lWRm) - Shahriar Shariati‏
|
||||
* [Django2 All In One Course -‏ دوره کامل جنگو و مهندسی بک اند](https://www.youtube.com/playlist?list=PLGlWjLcdLyGyqEqh9rBQ-9toPsFeHWrMr) - Boby Cloud‏
|
||||
|
||||
|
||||
### FastAPI
|
||||
|
||||
* [آموزش FastAPI](https://www.youtube.com/playlist?list=PL7MXODW7Gj1c1jviyYkRHKNeU_9BK0Ud7) - TorhamDev : Tech With Tori
|
||||
* [آموزش FastAPI‏](https://www.youtube.com/playlist?list=PL7MXODW7Gj1c1jviyYkRHKNeU_9BK0Ud7) - TorhamDev : Tech With Tori‏
|
||||
|
||||
|
||||
### Flask
|
||||
|
||||
* [آموزش توسعه وب با فریمورک فلسک](https://www.youtube.com/playlist?list=PLdUn5H7OTUk1WYCrDJpNGpJ2GFWd7yZaw) - Alireza Ayinmehr
|
||||
* [آموزش توسعه وب با فریمورک فلسک](https://www.youtube.com/playlist?list=PLdUn5H7OTUk1WYCrDJpNGpJ2GFWd7yZaw) - Alireza Ayinmehr‏
|
||||
|
||||
|
||||
### Storage
|
||||
|
||||
* [آموزش رایگان سف](https://www.youtube.com/playlist?list=PLRMCwJJwWR1DhlYbrvwXCXbudzfxseo7E) - Morteza Bashsiz
|
||||
* [آموزش رایگان سف](https://www.youtube.com/playlist?list=PLRMCwJJwWR1DhlYbrvwXCXbudzfxseo7E) - Morteza Bashsiz‏
|
||||
|
||||
|
||||
### Web Development
|
||||
|
||||
* [آموزش اینسپکت المنت](https://holosen.net/inspect-element-1/) - Hossein Badrnezhad
|
||||
* [آموزش طراحی وب](https://www.youtube.com/playlist?list=PLF10DSJQktjlCvLNuyxNjMPIHThHuIVqG) - Siavash Mahmoudian
|
||||
* [برنامه نویسی وب](https://maktabkhooneh.org/course/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D9%88%D8%A8-mk74) - Mohammad Salehe
|
||||
* [برنامه نویسی وب با HTML و CSS](https://holosen.net/web-design/) - Hossein Badrnezhad *(نیاز به ثبت نام دارد)*
|
||||
* [دوره اموزشی بوت استرپ 5](https://www.youtube.com/playlist?list=PLAt10Vana3YciJv9EIcNSsm1yTGpOdJIp) - Mehran Tarif (Silicium)
|
||||
* [وبفریمورکها چگونه کار میکنند؟](https://www.youtube.com/playlist?list=PLRU2zoAmuzJ33x-___WkhyTJ8dDPaoOPk) - Shahriar Shariati
|
||||
* [آموزش اینسپکت المنت](https://holosen.net/inspect-element-1/) - Hossein Badrnezhad‏
|
||||
* [آموزش طراحی وب](https://www.youtube.com/playlist?list=PLF10DSJQktjlCvLNuyxNjMPIHThHuIVqG) - Siavash Mahmoudian‏
|
||||
* [برنامه نویسی وب](https://maktabkhooneh.org/course/%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C-%D9%88%D8%A8-mk74) - Mohammad Salehe‏
|
||||
* [برنامه نویسی وب با HTML‏ و CSS‏](https://holosen.net/web-design/) - Hossein Badrnezhad‏ *(نیاز به ثبت نام دارد)*
|
||||
* [دوره آموزشی بوت استرپ 5‏](https://www.youtube.com/playlist?list=PLAt10Vana3YciJv9EIcNSsm1yTGpOdJIp) - Mehran Tarif‏ (Silicium‏)
|
||||
* [وبفریمورکها چگونه کار میکنند؟](https://www.youtube.com/playlist?list=PLRU2zoAmuzJ33x-___WkhyTJ8dDPaoOPk) - Shahriar Shariati‏
|
||||
|
||||
|
||||
</div>
|
||||
|
@@ -1,3 +1,5 @@
|
||||
<div dir="rtl" markdown="1">
|
||||
|
||||
### Index
|
||||
|
||||
* [C++](#cpp)
|
||||
@@ -7,17 +9,20 @@
|
||||
|
||||
### <a id="cpp"></a>C++
|
||||
|
||||
* [מבוא לתכנות בשפת C++](https://campus.gov.il/course/course-v1-basmach-pc264/) (קמפוסIL ובסמ״ח)
|
||||
* [מבוא לתכנות בשפת C++‎](https://campus.gov.il/course/course-v1-basmach-pc264/) (קמפוסIL‎ ובסמ״ח)
|
||||
|
||||
|
||||
### Python
|
||||
|
||||
* [Next.py – הצעד הבא שלך בפייתון](https://campus.gov.il/course/course-v1-cs-gov-cs-nextpy102/) (קמפוסIL והמרכז לחינוך סייבר)
|
||||
* [network.py לתכנת במרחב הרשת](https://campus.gov.il/course/cs-gov-cs-networkpy103-2020-1/) (קמפוסIL והמרכז לחינוך סייבר)
|
||||
* [Python Course Hebrew](https://youtube.com/playlist?list=PL1ZSrkGSJEGMgiAaEx1Cw3khbdDXGx_6i) - Geek of Automation
|
||||
* [Self.py – הדרך שלך ללמוד פייתון](https://campus.gov.il/course/course-v1-cs-gov_cs_selfpy101/) (קמפוסIL והמרכז לחינוך סייבר)
|
||||
* [Next.py –‎ הצעד הבא שלך בפייתון](https://campus.gov.il/course/course-v1-cs-gov-cs-nextpy102/) (קמפוסIL‎ והמרכז לחינוך סייבר)
|
||||
* [network.py‎ לתכנת במרחב הרשת](https://campus.gov.il/course/cs-gov-cs-networkpy103-2020-1/) (קמפוסIL‎ והמרכז לחינוך סייבר)
|
||||
* [Python Course Hebrew](https://youtube.com/playlist?list=PL1ZSrkGSJEGMgiAaEx1Cw3khbdDXGx_6i) - Geek of Automation‏
|
||||
* [Self.py –‎ הדרך שלך ללמוד פייתון](https://campus.gov.il/course/course-v1-cs-gov_cs_selfpy101/) (קמפוסIL‎ והמרכז לחינוך סייבר)
|
||||
|
||||
|
||||
### R
|
||||
|
||||
* [מבוא לתכנות ועיבוד נתונים בשפת R](https://campus.gov.il/course/telhai-acd-rfp4-telhai-r/) (קמפוסIL ומכללת תל־חי)
|
||||
* [מבוא לתכנות ועיבוד נתונים בשפת R‏](https://campus.gov.il/course/telhai-acd-rfp4-telhai-r/) (קמפוסIL‎ ומכללת תל־חי)
|
||||
|
||||
|
||||
</div>
|
||||
|
@@ -14,56 +14,56 @@
|
||||
|
||||
### Algorithms
|
||||
|
||||
* [Data Structures and Algorithms Analysis Complete Course in Hindi/Urdu \| Data structures by Fahad Hussain \| data structures and algorithms tutorial](https://www.youtube.com/playlist?list=PLtCBuHKmdxOfPNlAKWxBqdznCcXV4iWCz) - Fahad Hussain
|
||||
* [Data Structures and Algorithms Analysis Complete Course in Hindi/Urdu \| Data structures by Fahad Hussain \| data structures and algorithms tutorial](https://www.youtube.com/playlist?list=PLtCBuHKmdxOfPNlAKWxBqdznCcXV4iWCz) - Fahad Hussain‏
|
||||
|
||||
|
||||
### Android
|
||||
|
||||
* [Flutter App Development](https://www.youtube.com/playlist?list=PLlvhNpz1tBvH4Wn8rMjtscK3l2pXnC9aN) - Code With Dhruv
|
||||
* [The complete Android Application Development Course in Hindi/Urdu \| Android Development for Beginners in Hindi - Urdu \| Android tutorial in Urdu](https://www.youtube.com/playlist?list=PLtCBuHKmdxOe8IWZnA515lGPKaWx5WNOE) - Fahad Hussain
|
||||
* [Mobile App Development Tutorial Series using React Native in Urdu / Hindi](https://www.youtube.com/playlist?list=PL9fcHFJHtFaZ6DuInqORqFUaKiZO1XCmb) - Perfect Web Solutions
|
||||
* [Flutter App Development](https://www.youtube.com/playlist?list=PLlvhNpz1tBvH4Wn8rMjtscK3l2pXnC9aN) - Code With Dhruv‏
|
||||
* [The complete Android Application Development Course in Hindi/Urdu \| Android Development for Beginners in Hindi - Urdu \| Android tutorial in Urdu](https://www.youtube.com/playlist?list=PLtCBuHKmdxOe8IWZnA515lGPKaWx5WNOE) - Fahad Hussain‏
|
||||
* [Mobile App Development Tutorial Series using React Native in Urdu / Hindi](https://www.youtube.com/playlist?list=PL9fcHFJHtFaZ6DuInqORqFUaKiZO1XCmb) - Perfect Web Solutions‏
|
||||
|
||||
|
||||
### <a id="c"></a>C
|
||||
|
||||
* [C language tutorial for beginners Urdu/Hindi](https://www.youtube.com/playlist?list=PLtCBuHKmdxOfDo1cChVR3jYEzLtNpGjXa) - Fahad Hussain
|
||||
* [C language tutorial for beginners Urdu/Hindi](https://www.youtube.com/playlist?list=PLtCBuHKmdxOfDo1cChVR3jYEzLtNpGjXa) - Fahad Hussain‏
|
||||
|
||||
|
||||
### <a id="cplusplus"></a>C++
|
||||
|
||||
* [C++ Course Series for Beginner in Urdu/Hindi](https://www.youtube.com/playlist?list=PLuuQCKO44unsLwJMkR8_koVG6vDPjMYmH) - Learning Point
|
||||
* [C++ Free Course for Beginners in (Urdu /Hindi)](https://www.youtube.com/playlist?list=PLt4rWC_3rBbWnDrIv4IeC4Vm7PN1wvrNg) - CodeMite
|
||||
* [Programming Fundamentals With C++ Complete Course In urdu \| Hindi](https://www.youtube.com/playlist?list=PL4QkPoTgwFULciDFVJEHEwOKMtf9Q_Aqh) - Kacs Learnings
|
||||
* [C++ Course Series for Beginner in Urdu/Hindi](https://www.youtube.com/playlist?list=PLuuQCKO44unsLwJMkR8_koVG6vDPjMYmH) - Learning Point‏
|
||||
* [C++ Free Course for Beginners in (Urdu /Hindi)](https://www.youtube.com/playlist?list=PLt4rWC_3rBbWnDrIv4IeC4Vm7PN1wvrNg) - CodeMite‏
|
||||
* [Programming Fundamentals With C++ Complete Course In urdu \| Hindi](https://www.youtube.com/playlist?list=PL4QkPoTgwFULciDFVJEHEwOKMtf9Q_Aqh) - Kacs Learnings‏
|
||||
|
||||
|
||||
### <a id="csharp"></a>C#‎
|
||||
|
||||
* [C# Tutorial For Beginners in Hindi/Urdu](https://www.youtube.com/playlist?list=PLtCBuHKmdxOfLseCtdZg1a3XBsDFbRVfd) - Fahad Hussain
|
||||
* [C# Tutorials In Urdu/Hindi](https://youtube.com/playlist?list=PLUyYwyJA_WfQd5zeCU890TDFQAqboekyc) - ProgramInUrdu
|
||||
* [C# Tutorial For Beginners in Hindi/Urdu](https://www.youtube.com/playlist?list=PLtCBuHKmdxOfLseCtdZg1a3XBsDFbRVfd) - Fahad Hussain‏
|
||||
* [C# Tutorials In Urdu/Hindi](https://youtube.com/playlist?list=PLUyYwyJA_WfQd5zeCU890TDFQAqboekyc) - ProgramInUrdu‏
|
||||
|
||||
|
||||
### Figma
|
||||
|
||||
* [Figma Design Complete Course in Urdu | Hindi](https://youtube.com/playlist?list=PLspW40rZgNekDbMeeuV8VLt3JoCMg8pQt&si=_J8tYEL3W0YFiHNh) - Tutorials Town
|
||||
* [Figma Design Complete Course in Urdu | Hindi](https://youtube.com/playlist?list=PLspW40rZgNekDbMeeuV8VLt3JoCMg8pQt&si=_J8tYEL3W0YFiHNh) - Tutorials Town‏
|
||||
|
||||
|
||||
### <a id="html-and-css"></a>HTML and CSS
|
||||
|
||||
* [HTML5 & CSS3 Tutorials In Urdu and Hindi](https://youtube.com/playlist?list=PLUyYwyJA_WfTr3YWWJ41_V7TrRZoq6cBT) - ProgramInUrdu
|
||||
* [HTML5 & CSS3 Tutorials in Urdu/Hindi](https://www.youtube.com/playlist?list=PLU4yvac0MJbJrUWqGQbtFxOYR3gRvXxMs) - OnlineUstaad
|
||||
* [HTML5 & CSS3 Tutorials In Urdu and Hindi](https://youtube.com/playlist?list=PLUyYwyJA_WfTr3YWWJ41_V7TrRZoq6cBT) - ProgramInUrdu‏
|
||||
* [HTML5 & CSS3 Tutorials in Urdu/Hindi](https://www.youtube.com/playlist?list=PLU4yvac0MJbJrUWqGQbtFxOYR3gRvXxMs) - OnlineUstaad‏
|
||||
|
||||
|
||||
### Java
|
||||
|
||||
* [Java Programming in Urdu/Hindi](https://www.youtube.com/playlist?list=PLU4yvac0MJbKs78u32MyVgYFg9d-6DYGL) - OnlineUstaad
|
||||
* [Java Programming in Urdu/Hindi](https://www.youtube.com/playlist?list=PLU4yvac0MJbKs78u32MyVgYFg9d-6DYGL) - OnlineUstaad‏
|
||||
|
||||
|
||||
### Next.js
|
||||
|
||||
* [Master Next JS 14: Complete Next JS 14 Tutorial from Basics to Advanced in Hindi/Urdu with Projects & Interview Prep](https://www.youtube.com/playlist?list=PL5OhSdfH4uDu6YJcHhmQLkwx4hPWyppos) - The Techzeen
|
||||
* [Master Next JS 14: Complete Next JS 14 Tutorial from Basics to Advanced in Hindi/Urdu with Projects & Interview Prep](https://www.youtube.com/playlist?list=PL5OhSdfH4uDu6YJcHhmQLkwx4hPWyppos) - The Techzeen‏
|
||||
|
||||
|
||||
### Python
|
||||
|
||||
* [Python](https://www.youtube.com/playlist?list=PL-vQNozaqIxuPzFUVEIrYDvd6ieUshJTw) - Kawish - Urdu
|
||||
* [Python_ka_chilla (python in 40 days in urdu/Hindi)](https://www.youtube.com/playlist?list=PL9XvIvvVL50HVsu-Ao8NBr0UJSO8O6lBI) - Codeanics
|
||||
* [Python](https://www.youtube.com/playlist?list=PL-vQNozaqIxuPzFUVEIrYDvd6ieUshJTw) - Kawish - Urdu‏
|
||||
* [Python_ka_chilla (python in 40 days in urdu/Hindi)](https://www.youtube.com/playlist?list=PL9XvIvvVL50HVsu-Ao8NBr0UJSO8O6lBI) - Codeanics‏
|
||||
|
@@ -262,3 +262,52 @@ Se riesci a stamparlo e conservarne l'essenza, non è un tutorial interattivo.
|
||||
|
||||
- È possibile specificare più di un file da controllare, utilizzando un singolo spazio per separare ogni voce.
|
||||
- Se specifichi più di un file, i risultati della build si basano sul risultato dell'ultimo file controllato. Dovresti essere consapevole che potresti ottenere il passaggio di build verdi a causa di ciò, quindi assicurati di ispezionare il registro di build alla fine della Pull Request facendo clic su "Show all checks" -> "Details".
|
||||
|
||||
|
||||
### Come risolvere gli errori del linter RTL/LTR
|
||||
|
||||
Se viene eseguito il linter RTL/LTR Markdown Linter (sui file `*-ar.md`, `*-he.md`, `*-fa.md`, `*-ur.md`) e si vedono errori o warning:
|
||||
|
||||
- **Parole LTR** (ad esempio "HTML", "JavaScript") in testo RTL: aggiungi `‏` immediatamente dopo ogni segmento LTR;
|
||||
- **Simboli LTR** (ad esempio "C#", "C++"): aggiungi `‎` immediatamente dopo ogni simbolo LTR;
|
||||
|
||||
#### Esempi
|
||||
|
||||
**SCORRETTO**
|
||||
```html
|
||||
<div dir="rtl" markdown="1">
|
||||
* [كتاب الأمثلة في R](URL) - John Doe (PDF)
|
||||
</div>
|
||||
```
|
||||
**CORRETTO**
|
||||
```html
|
||||
<div dir="rtl" markdown="1">
|
||||
* [كتاب الأمثلة في R‏](URL) - John Doe‏ (PDF)
|
||||
</div>
|
||||
```
|
||||
---
|
||||
**SCORRETTO**
|
||||
```html
|
||||
<div dir="rtl" markdown="1">
|
||||
* [Tech Podcast - بودكاست المثال](URL) – Ahmad Hasan, محمد علي
|
||||
</div>
|
||||
```
|
||||
**CORRETTO**
|
||||
```html
|
||||
<div dir="rtl" markdown="1">
|
||||
* [Tech Podcast - بودكاست المثال](URL) – Ahmad Hasan,‏ محمد علي
|
||||
</div>
|
||||
```
|
||||
---
|
||||
**SCORRETTO**
|
||||
```html
|
||||
<div dir="rtl" markdown="1">
|
||||
* [أساسيات C#](URL)
|
||||
</div>
|
||||
```
|
||||
**CORRETTO**
|
||||
```html
|
||||
<div dir="rtl" markdown="1">
|
||||
* [أساسيات C#‎](URL)
|
||||
</div>
|
||||
```
|
||||
|
@@ -286,3 +286,52 @@ If you can print it out and retain its essence, it's not an Interactive Tutorial
|
||||
|
||||
- You may specify more than one file to check, using a single space to separate each entry.
|
||||
- If you specify more than one file, results of the build are based on the result of the last file checked. You should be aware that you may get passing green builds due to this so be sure to inspect the build log at the end of the Pull Request by clicking on "Show all checks" -> "Details".
|
||||
|
||||
|
||||
### Fixing RTL/LTR linter errors
|
||||
|
||||
If you run the RTL/LTR Markdown Linter (on `*-ar.md`, `*-he.md`, `*-fa.md`, `*-ur.md` files) and see errors or warnings:
|
||||
|
||||
- **LTR words** (e.g. “HTML”, “JavaScript”) in RTL text: append `‏` immediately after each LTR segment;
|
||||
- **LTR symbols** (e.g. “C#”, “C++”): append `‎` immediately after each LTR symbol;
|
||||
|
||||
#### Examples
|
||||
|
||||
**BAD**
|
||||
```html
|
||||
<div dir="rtl" markdown="1">
|
||||
* [كتاب الأمثلة في R](URL) - John Doe (PDF)
|
||||
</div>
|
||||
```
|
||||
**GOOD**
|
||||
```html
|
||||
<div dir="rtl" markdown="1">
|
||||
* [كتاب الأمثلة في R‏](URL) - John Doe‏ (PDF)
|
||||
</div>
|
||||
```
|
||||
---
|
||||
**BAD**
|
||||
```html
|
||||
<div dir="rtl" markdown="1">
|
||||
* [Tech Podcast - بودكاست المثال](URL) – Ahmad Hasan, محمد علي
|
||||
</div>
|
||||
```
|
||||
**GOOD**
|
||||
```html
|
||||
<div dir="rtl" markdown="1">
|
||||
* [Tech Podcast - بودكاست المثال](URL) – Ahmad Hasan,‏ محمد علي
|
||||
</div>
|
||||
```
|
||||
---
|
||||
**BAD**
|
||||
```html
|
||||
<div dir="rtl" markdown="1">
|
||||
* [أساسيات C#](URL)
|
||||
</div>
|
||||
```
|
||||
**GOOD**
|
||||
```html
|
||||
<div dir="rtl" markdown="1">
|
||||
* [أساسيات C#‎](URL)
|
||||
</div>
|
||||
```
|
||||
|
597
scripts/rtl_ltr_linter.py
Normal file
597
scripts/rtl_ltr_linter.py
Normal file
@@ -0,0 +1,597 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
RTL/LTR Markdown Linter.
|
||||
|
||||
This script analyzes Markdown files to identify potential issues
|
||||
in the display of mixed Right-To-Left (RTL) and Left-To-Right (LTR) text.
|
||||
It reads configuration from a `rtl_linter_config.yml` file located in the same
|
||||
directory as the script.
|
||||
|
||||
Key Features:
|
||||
- Line-by-line parsing of Markdown list items.
|
||||
- Detection of HTML 'dir' attributes to switch text direction context.
|
||||
- Handling of nested 'dir' contexts within '<span>' tags.
|
||||
- Detection of LTR keywords and symbols that might require Unicode markers.
|
||||
- BIDI (Bidirectional Algorithm) visual analysis using the 'python-bidi' library.
|
||||
- Parsing of metadata for book items (title, author, meta).
|
||||
- Configurable severity levels for detected issues (error, warning, notice).
|
||||
- Filters to ignore code blocks, inline code, and text within parentheses.
|
||||
- Specific check for RTL authors followed by LTR metadata.
|
||||
"""
|
||||
import sys
|
||||
import os
|
||||
import argparse
|
||||
import re
|
||||
import yaml
|
||||
from bidi.algorithm import get_display
|
||||
|
||||
|
||||
def load_config(path):
|
||||
"""
|
||||
Loads configuration from the specified YAML file.
|
||||
|
||||
If the file does not exist or an error occurs during loading,
|
||||
default values will be used.
|
||||
|
||||
Args:
|
||||
path (str): The path to the YAML configuration file.
|
||||
|
||||
Returns:
|
||||
dict: A dictionary containing the configuration parameters.
|
||||
Default values are merged with those loaded from the file,
|
||||
with the latter taking precedence.
|
||||
"""
|
||||
# Default configuration values
|
||||
default = {
|
||||
'ltr_keywords': [],
|
||||
'ltr_symbols': [],
|
||||
'pure_ltr_pattern': r"^[\u0000-\u007F]+$", # Matches ASCII characters (Basic Latin character)
|
||||
'rtl_chars_pattern': r"[\u0590-\u08FF]", # Matches Right-to-Left (RTL) characters (Arabic, Hebrew, etc.)
|
||||
'severity': {
|
||||
'bidi_mismatch': 'error', # A difference between the displayed and logical order of text
|
||||
'keyword': 'warning', # An LTR keyword (e.g., "HTML") in an RTL context might need an ‏
|
||||
'symbol': 'warning', # An LTR symbol (e.g., "C#") in an RTL context might need an ‎
|
||||
'pure_ltr': 'notice', # A purely LTR segment in an RTL context might need a trailing ‎
|
||||
'author_meta': 'notice' # Specific rules for LTR authors/metadata in RTL contexts.
|
||||
},
|
||||
'ignore_meta': ['PDF', 'EPUB', 'HTML', 'podcast', 'videocast'],
|
||||
'min_ltr_length': 3,
|
||||
'rlm_entities': ['‏', '‏', '‏'],
|
||||
'lrm_entities': ['‎', '‎', '‎']
|
||||
}
|
||||
|
||||
# If a path is specified and the file exists, attempt to load it
|
||||
if path and os.path.exists(path):
|
||||
try:
|
||||
with open(path, encoding='utf-8') as f:
|
||||
data = yaml.safe_load(f) or {}
|
||||
conf = data.get('rtl_config', {})
|
||||
default.update(conf)
|
||||
except Exception as e:
|
||||
print(f"::warning file={path}::Could not load config: {e}. Using defaults.") # Output to stdout for GitHub Actions
|
||||
|
||||
# Return the configuration (updated defaults or just defaults)
|
||||
return default
|
||||
|
||||
|
||||
def is_rtl_filename(path):
|
||||
'''
|
||||
Checks if the given filename indicates an RTL filename.
|
||||
|
||||
Args:
|
||||
path (str): The path to the file.
|
||||
|
||||
Returns:
|
||||
bool: True if the filename suggests an RTL language, False otherwise.
|
||||
'''
|
||||
name = os.path.basename(path).lower()
|
||||
return any(name.endswith(suf) for suf in ['-ar.md','_ar.md','-he.md','_he.md','-fa.md','_fa.md','-ur.md','_ur.md'])
|
||||
|
||||
# Regex to identify a Markdown list item (e.g., "* text", "- text")
|
||||
LIST_ITEM_RE = re.compile(r'^\s*[\*\-\+]\s+(.*)')
|
||||
|
||||
# Regex to extract title, URL, author, and metadata from a formatted book item
|
||||
# Example: Book Title - Author (Metadata)
|
||||
BOOK_ITEM_RE = re.compile(
|
||||
r"^\s*\[(?P<title>.+?)\]\((?P<url>.+?)\)" # Title and URL (required)
|
||||
r"(?:\s*[-–—]\s*(?P<author>[^\(\n\[]+?))?" # Author (optional), separated by -, –, —
|
||||
r"(?:\s*[\(\[](?P<meta>.*?)[\)\]])?\s*$" # Metadata (optional), enclosed in parentheses () or []
|
||||
)
|
||||
|
||||
# Regex to find the dir="rtl" or dir="ltr" attribute in an HTML tag
|
||||
HTML_DIR_ATTR_RE = re.compile(r"dir\s*=\s*(['\"])(rtl|ltr)\1", re.IGNORECASE)
|
||||
|
||||
# Regex to find <span> tags with a dir attribute
|
||||
SPAN_DIR_RE = re.compile(r'<span[^>]*dir=["\'](rtl|ltr)["\'][^>]*>', re.IGNORECASE)
|
||||
|
||||
# Regex to identify inline code (text enclosed in single backticks)
|
||||
INLINE_CODE_RE = re.compile(r'^`.*`$')
|
||||
|
||||
# Regex to identify the start of a code block (```)
|
||||
# Can be preceded by spaces or a '>' character (for blockquotes)
|
||||
CODE_FENCE_START = re.compile(r'^\s*>?\s*```')
|
||||
|
||||
# Regex to identify text entirely enclosed in parentheses or square brackets.
|
||||
# Useful for skipping segments like "(PDF)" or "[Free]" during analysis.
|
||||
BRACKET_CONTENT_RE = re.compile(r'''
|
||||
(?:^|\W) # Start of line or non-word character
|
||||
(\[|\() # Open square or round bracket
|
||||
([^\n\)\]]*?) # Content
|
||||
(\]|\)) # Close square or round bracket
|
||||
(?:\W|$) # End of line or non-word character
|
||||
''', re.VERBOSE | re.UNICODE) # VERBOSE for comments, UNICODE for correct matching
|
||||
|
||||
|
||||
def split_by_span(text, base_ctx):
|
||||
"""
|
||||
Splits text into segments based on nested <span> tags with dir attributes.
|
||||
|
||||
Args:
|
||||
text (str): The input string to split.
|
||||
base_ctx (str): The base directionality context ('rtl' or 'ltr').
|
||||
|
||||
Returns:
|
||||
list: A list of tuples, where each tuple contains a text segment (str)
|
||||
and its corresponding directionality context ('rtl' or 'ltr').
|
||||
|
||||
Example of stack behavior:
|
||||
Input: "Text <span dir='rtl'>RTL <span dir='ltr'>LTR</span> RTL</span> Text"
|
||||
base_ctx: 'ltr'
|
||||
|
||||
Initial stack: ['ltr']
|
||||
Tokens: ["Text ", "<span dir='rtl'>", "RTL ", "<span dir='ltr'>", "LTR", "</span>", " RTL", "</span>", " Text"]
|
||||
|
||||
Processing:
|
||||
1. "Text ": segments.append(("Text ", 'ltr')), stack: ['ltr']
|
||||
2. "<span dir='rtl'>": stack.append('rtl'), stack: ['ltr', 'rtl']
|
||||
3. "RTL ": segments.append(("RTL ", 'rtl')), stack: ['ltr', 'rtl']
|
||||
4. "<span dir='ltr'>": stack.append('ltr'), stack: ['ltr', 'rtl', 'ltr']
|
||||
5. "LTR": segments.append(("LTR", 'ltr')), stack: ['ltr', 'rtl', 'ltr']
|
||||
6. "</span>": stack.pop(), stack: ['ltr', 'rtl']
|
||||
7. " RTL": segments.append((" RTL", 'rtl')), stack: ['ltr', 'rtl']
|
||||
8. "</span>": stack.pop(), stack: ['ltr']
|
||||
9. " Text": segments.append((" Text", 'ltr')), stack: ['ltr']
|
||||
|
||||
Resulting segments: [("Text ", 'ltr'), ("RTL ", 'rtl'), ("LTR", 'ltr'), (" RTL", 'rtl'), (" Text", 'ltr')]
|
||||
"""
|
||||
# Split the text based on <span> tags
|
||||
tokens = re.split(r'(<span[^>]*dir=["\'](?:rtl|ltr)["\'][^>]*>|</span>)', text)
|
||||
|
||||
# Initialize the stack with the base context
|
||||
stack = [base_ctx]
|
||||
|
||||
# Initialize the segments
|
||||
segments = []
|
||||
|
||||
# for each token
|
||||
for tok in tokens:
|
||||
|
||||
# Skip empty tokens
|
||||
if not tok:
|
||||
continue
|
||||
|
||||
# Check if the token is an opening <span> tag with a dir attribute
|
||||
m = SPAN_DIR_RE.match(tok)
|
||||
|
||||
# If so, push the new context onto the stack
|
||||
if m:
|
||||
stack.append(m.group(1).lower()); continue
|
||||
|
||||
# If the token is a closing </span> tag
|
||||
if tok.lower() == '</span>':
|
||||
|
||||
# Pop the last context from the stack
|
||||
if len(stack) > 1: stack.pop()
|
||||
continue
|
||||
|
||||
# Otherwise, if the token is not a span tag, it's a text segment.
|
||||
# So, we need to append the tuple (segment, current context) to segments[]
|
||||
# Where the current context is the top element of the stack.
|
||||
segments.append((tok, stack[-1]))
|
||||
|
||||
# return the list of tuples
|
||||
return segments
|
||||
|
||||
|
||||
def lint_file(path, cfg):
|
||||
"""
|
||||
Analyzes a single Markdown file for RTL/LTR issues.
|
||||
|
||||
Args:
|
||||
path (str): The path to the Markdown file to analyze.
|
||||
cfg (dict): The configuration dictionary.
|
||||
|
||||
Returns:
|
||||
list: A list of strings, where each string represents a detected issue,
|
||||
formatted for GitHub Actions output.
|
||||
"""
|
||||
# Initialize the list of issues
|
||||
issues = []
|
||||
|
||||
# Try to read the file content and handle potential errors
|
||||
try:
|
||||
lines = open(path, encoding='utf-8').read().splitlines()
|
||||
except Exception as e:
|
||||
return [f"::error file={path},line=1::Cannot read file: {e}"] # Return as a list of issues
|
||||
|
||||
# Extract configuration parameters for easier access and readability
|
||||
keywords_orig = cfg['ltr_keywords']
|
||||
symbols = cfg['ltr_symbols']
|
||||
pure_ltr_re = re.compile(cfg['pure_ltr_pattern'])
|
||||
rtl_char_re = re.compile(cfg['rtl_chars_pattern'])
|
||||
sev = cfg['severity']
|
||||
ignore_meta = set(cfg['ignore_meta'])
|
||||
min_len = cfg['min_ltr_length']
|
||||
|
||||
# chr(0x200F) = RLM Unicode character
|
||||
# chr(0x200E) = LRM Unicode character
|
||||
# These control character must be added here in the code and not in the YAML configuration file,
|
||||
# due to the fact that if we included them in the YAML file they would be invisible and, therefore,
|
||||
# the YAML file would be less readable
|
||||
RLM = [chr(0x200F)] + cfg['rlm_entities']
|
||||
LRM = [chr(0x200E)] + cfg['lrm_entities']
|
||||
|
||||
# Determine the directionality context of the file (RTL or LTR) based on the filename
|
||||
file_direction_ctx = 'rtl' if is_rtl_filename(path) else 'ltr'
|
||||
|
||||
# Stack to manage block-level direction contexts for nested divs.
|
||||
# Initialized with the file's base direction context.
|
||||
block_context_stack = [file_direction_ctx]
|
||||
|
||||
# Iterate over each line of the file with its line number
|
||||
for idx, line in enumerate(lines, 1):
|
||||
|
||||
# The active block direction context for the current line is the top of the stack.
|
||||
active_block_direction_ctx = block_context_stack[-1]
|
||||
|
||||
# Skip lines that start a code block (```)
|
||||
if CODE_FENCE_START.match(line): continue
|
||||
|
||||
# Check for block-level directionality changes (e.g., <div dir="rtl">)
|
||||
m_div_open = HTML_DIR_ATTR_RE.search(line)
|
||||
|
||||
# If an opening <div dir="..." markdown="1"> tag is found
|
||||
if m_div_open and 'markdown="1"' in line:
|
||||
new_div_ctx = m_div_open.group(2).lower() # Extract the new directionality context from the opening div tag
|
||||
block_context_stack.append(new_div_ctx) # Push the new directionality context onto the stack
|
||||
continue # Continue to the next line of the file
|
||||
|
||||
# If a closing </div> tag is found and we are inside a div context
|
||||
# (i.e., the stack has more than just the base file_direction_ctx)
|
||||
if '</div>' in line and len(block_context_stack) > 1:
|
||||
block_context_stack.pop() # Pop the last directionality context from the stack
|
||||
continue # Continue to the next line of the file
|
||||
|
||||
# Check if the line is a Markdown list item
|
||||
list_item = LIST_ITEM_RE.match(line)
|
||||
|
||||
# If the line is not a list item, skip to the next line
|
||||
if not list_item: continue
|
||||
|
||||
# Extract the text content of the list item and remove leading/trailing whitespace
|
||||
text = list_item.group(1).strip()
|
||||
|
||||
# Extract item parts (title, author, metadata) if it matches the book format
|
||||
book_item = BOOK_ITEM_RE.match(text)
|
||||
|
||||
# If the current line is a book item
|
||||
if book_item:
|
||||
|
||||
# Extract title, author, and metadata from the book item
|
||||
title = book_item.group('title')
|
||||
author = (book_item.group('author') or '').strip()
|
||||
meta = (book_item.group('meta') or '').strip()
|
||||
|
||||
# If the list item is just a link like the link in the section "### Index" of the .md files (i.e., [Title](url))
|
||||
is_link_only_item = not author and not meta
|
||||
|
||||
# Otherwise, if it's not a book item
|
||||
else:
|
||||
|
||||
# Initialize title, author, and meta with empty strings
|
||||
title, author, meta = text, '', ''
|
||||
|
||||
# Set is_link_only_item to False
|
||||
is_link_only_item = False
|
||||
|
||||
# Specific check: RTL author followed by LTR metadata (e.g., اسم المؤلف (PDF))
|
||||
if active_block_direction_ctx == 'rtl' and \
|
||||
author and meta and \
|
||||
rtl_char_re.search(author) and pure_ltr_re.match(meta) and \
|
||||
len(meta) >= min_len and \
|
||||
not any(author.strip().endswith(rlm_marker) for rlm_marker in RLM):
|
||||
issues.append(
|
||||
f"::{sev['author_meta'].lower()} file={path},line={idx}::RTL author '{author.strip()}' followed by LTR meta '{meta}' may need '‏' after author."
|
||||
)
|
||||
|
||||
# Analyze individual parts of the item (title, author, metadata)
|
||||
for part, raw_text in [('title', title), ('author', author), ('meta', meta)]:
|
||||
|
||||
# Skip if the part is empty or if it's metadata to be ignored (e.g., "PDF")
|
||||
if not raw_text or (part=='meta' and raw_text in ignore_meta): continue
|
||||
|
||||
# Split the part into segments based on <span> tags with dir attributes
|
||||
segments = split_by_span(raw_text, active_block_direction_ctx)
|
||||
|
||||
# Filter keywords to avoid duplicates with symbols (a symbol can contain a keyword)
|
||||
filtered_keywords = [kw for kw in keywords_orig]
|
||||
for sym in symbols:
|
||||
filtered_keywords = [kw for kw in filtered_keywords if kw not in sym]
|
||||
|
||||
# Iterate over each text segment and its directionality context
|
||||
for segment_text, segment_direction_ctx in segments:
|
||||
|
||||
# Remove leading/trailing whitespace from the segment text
|
||||
s = segment_text.strip()
|
||||
|
||||
# In the following block of code, it's checked if the segment is entirely enclosed in parentheses or brackets.
|
||||
# In fact, if the content inside is purely LTR or RTL, its display is usually
|
||||
# well-isolated by the parentheses or brackets and less prone to BIDI issues.
|
||||
# Mixed LTR/RTL content inside brackets should still be checked.
|
||||
|
||||
# Check if the segment is entirely enclosed in parentheses or brackets.
|
||||
m_bracket = BRACKET_CONTENT_RE.fullmatch(s)
|
||||
if m_bracket:
|
||||
|
||||
# If it is, extract the content inside the parentheses/brackets.
|
||||
inner_content = m_bracket.group(2)
|
||||
|
||||
# Determine if the inner content is purely LTR or purely RTL.
|
||||
is_pure_ltr_inner = pure_ltr_re.match(inner_content) is not None
|
||||
|
||||
# Check for pure RTL: contains RTL chars AND no LTR chars (using [A-Za-z0-9] as a proxy for common LTR chars)
|
||||
is_pure_rtl_inner = rtl_char_re.search(inner_content) is not None and re.search(r"[A-Za-z0-9]", inner_content) is None
|
||||
|
||||
# Skip the segment ONLY if the content inside is purely LTR or purely RTL.
|
||||
if is_pure_ltr_inner or is_pure_rtl_inner: continue
|
||||
|
||||
# Skip if it's inline code (i.e., `...`) or already contains directionality markers (e.g., ‏ or ‎)
|
||||
if any([
|
||||
INLINE_CODE_RE.match(s),
|
||||
any(mk in s for mk in RLM+LRM)
|
||||
]):
|
||||
continue
|
||||
|
||||
# Check for BIDI mismatch: if the text contains both RTL and LTR
|
||||
# characters and the calculated visual order differs from the logical order.
|
||||
if rtl_char_re.search(s) and re.search(r"[A-Za-z0-9]", s):
|
||||
disp = get_display(s)
|
||||
if disp != s:
|
||||
issues.append(
|
||||
f"::{sev['bidi_mismatch'].lower()} file={path},line={idx}::BIDI mismatch in {part}: the text '{s}' is displayed as '{disp}'"
|
||||
)
|
||||
|
||||
# If the segment context is LTR, there is no need to check LTR keywords and LTR symbols
|
||||
# that might need directionality markers, so we can skip the next checks and move on to the next line of the file
|
||||
if segment_direction_ctx != 'rtl': continue
|
||||
|
||||
# Skip keyword and symbol checks for titles of link-only items (e.g., in the Index section of markdown files)
|
||||
if not (part == 'title' and is_link_only_item):
|
||||
|
||||
# Check for LTR symbols: if an LTR symbol is present and lacks an '‎' marker
|
||||
for sym in symbols:
|
||||
if sym in s and not any(m in s for m in LRM):
|
||||
issues.append(
|
||||
f"::{sev['symbol'].lower()} file={path},line={idx}::Symbol '{sym}' in {part} '{s}' may need trailing '‎' marker."
|
||||
)
|
||||
|
||||
# Check for LTR keywords: if an LTR keyword is present and lacks an RLM marker
|
||||
for kw in filtered_keywords:
|
||||
if kw in s and not any(m in s for m in RLM):
|
||||
issues.append(
|
||||
f"::{sev['keyword'].lower()} file={path},line={idx}::Keyword '{kw}' in {part} '{s}' may need trailing '‏' marker."
|
||||
)
|
||||
|
||||
# Check for "Pure LTR" text: if the segment is entirely LTR,
|
||||
# it's not a title, and has a minimum length, it might need a trailing RLM.
|
||||
if (part != 'title') and pure_ltr_re.match(s) and not rtl_char_re.search(s) and len(s)>=min_len:
|
||||
issues.append(
|
||||
f"::{sev['pure_ltr'].lower()} file={path},line={idx}::Pure LTR text '{s}' in {part} of RTL context may need trailing '‏' marker."
|
||||
)
|
||||
|
||||
# Return the list of found issues
|
||||
return issues
|
||||
|
||||
|
||||
def get_changed_lines_for_file(filepath):
|
||||
"""
|
||||
Returns a set of line numbers (1-based) that were changed in the given file in the current PR.
|
||||
|
||||
This function uses 'git diff' to compare the current branch with 'origin/main' and extracts
|
||||
the line numbers of added or modified lines. It is used to restrict PR annotations to only
|
||||
those lines that have been changed in the pull request.
|
||||
|
||||
Args:
|
||||
filepath (str): The path to the file to check for changes.
|
||||
|
||||
Returns:
|
||||
set: A set of 1-based line numbers that were added or modified in the file.
|
||||
|
||||
Note:
|
||||
- Requires that the script is run inside a Git repository.
|
||||
- If the merge base cannot be found, returns an empty set and does not print errors.
|
||||
"""
|
||||
import subprocess
|
||||
changed_lines = set()
|
||||
try:
|
||||
# Get the diff for the file (unified=0 for no context lines)
|
||||
diff = subprocess.check_output(
|
||||
['git', 'diff', '--unified=0', 'origin/main...', '--', filepath],
|
||||
encoding='utf-8', errors='ignore'
|
||||
)
|
||||
for line in diff.splitlines():
|
||||
if line.startswith('@@'):
|
||||
# Example: @@ -10,0 +11,3 @@
|
||||
m = re.search(r'\+(\d+)(?:,(\d+))?', line)
|
||||
if m:
|
||||
start = int(m.group(1))
|
||||
count = int(m.group(2) or '1')
|
||||
for i in range(start, start + count):
|
||||
changed_lines.add(i)
|
||||
except Exception:
|
||||
# Silently ignore errors (e.g., unable to find merge base)
|
||||
pass
|
||||
return changed_lines
|
||||
|
||||
|
||||
def main():
|
||||
"""
|
||||
Main entry point for the RTL/LTR Markdown linter.
|
||||
|
||||
Parses command-line arguments, loads configuration, and scans the specified files or directories
|
||||
for Markdown files. For each file, it detects RTL/LTR issues and writes all findings to a log file.
|
||||
For files changed in the current PR, only issues on changed lines are printed to stdout as GitHub
|
||||
Actions annotations.
|
||||
|
||||
Exit code is 1 if any error or warning is found on changed lines, otherwise 0.
|
||||
|
||||
Command-line arguments:
|
||||
paths_to_scan: List of files or directories to scan for issues.
|
||||
--changed-files: List of files changed in the PR (for annotation filtering).
|
||||
--log-file: Path to the output log file (default: rtl-linter-output.log).
|
||||
"""
|
||||
# Create an ArgumentParser object to handle command-line arguments
|
||||
parser = argparse.ArgumentParser(
|
||||
description="Lints Markdown files for RTL/LTR issues, with PR annotation support."
|
||||
)
|
||||
|
||||
# Argument for files/directories to scan
|
||||
parser.add_argument(
|
||||
'paths_to_scan',
|
||||
nargs='+',
|
||||
help="List of files or directories to scan for all issues."
|
||||
)
|
||||
|
||||
# Optional argument for changed files (for PR annotation filtering)
|
||||
parser.add_argument(
|
||||
'--changed-files',
|
||||
nargs='*',
|
||||
default=None,
|
||||
help="List of changed files to generate PR annotations for."
|
||||
)
|
||||
|
||||
# Optional argument for the log file path
|
||||
parser.add_argument(
|
||||
'--log-file',
|
||||
default='rtl-linter-output.log',
|
||||
help="File to write all linter output to."
|
||||
)
|
||||
|
||||
# Parse the command-line arguments
|
||||
args = parser.parse_args()
|
||||
|
||||
# Determine the directory where the script is located to find the config file
|
||||
script_dir = os.path.dirname(os.path.abspath(__file__))
|
||||
|
||||
# Load the configuration from 'rtl_linter_config.yml'
|
||||
cfg = load_config(os.path.join(script_dir, 'rtl_linter_config.yml'))
|
||||
|
||||
# Initialize counters for total files processed and errors/warnings found
|
||||
total = errs = 0
|
||||
|
||||
# Count errors/warnings ONLY on changed/added lines for PR annotation exit code
|
||||
annotated_errs = 0
|
||||
|
||||
# Normalize changed file paths for consistent comparison
|
||||
changed_files_set = set(os.path.normpath(f) for f in args.changed_files) if args.changed_files else set()
|
||||
|
||||
# Build a map: {filepath: set(line_numbers)} for changed files
|
||||
changed_lines_map = {}
|
||||
for f in changed_files_set:
|
||||
changed_lines_map[f] = get_changed_lines_for_file(f)
|
||||
|
||||
# Flag to check if any issues were found
|
||||
any_issues = False
|
||||
|
||||
# Open the specified log file in write mode with UTF-8 encoding
|
||||
with open(args.log_file, 'w', encoding='utf-8') as log_f:
|
||||
|
||||
# Iterate over each path provided in 'paths_to_scan'
|
||||
for p_scan_arg in args.paths_to_scan:
|
||||
|
||||
# Normalize the scan path to ensure consistent handling (e.g., slashes)
|
||||
normalized_scan_path = os.path.normpath(p_scan_arg)
|
||||
|
||||
# If the path is a directory, recursively scan for .md files
|
||||
if os.path.isdir(normalized_scan_path):
|
||||
|
||||
# Walk through the directory and its subdirectories to find all Markdown files
|
||||
for root, _, files in os.walk(normalized_scan_path):
|
||||
|
||||
# For each file in the directory
|
||||
for fn in files:
|
||||
|
||||
# If the file is a Markdown file, lint it
|
||||
if fn.lower().endswith('.md'):
|
||||
file_path = os.path.normpath(os.path.join(root, fn))
|
||||
total += 1
|
||||
issues_found = lint_file(file_path, cfg)
|
||||
|
||||
# Process each issue found
|
||||
for issue_str in issues_found:
|
||||
log_f.write(issue_str + '\n')
|
||||
any_issues = True # Flag to check if any issues were found
|
||||
|
||||
# For GitHub Actions PR annotations: print only if the file is changed
|
||||
# and the issue is on a line that was actually modified or added in the PR
|
||||
if file_path in changed_files_set:
|
||||
m = re.search(r'line=(\d+)', issue_str)
|
||||
if m and int(m.group(1)) in changed_lines_map.get(file_path, set()):
|
||||
print(issue_str)
|
||||
|
||||
# Count errors on changed lines for the exit code logic
|
||||
if issue_str.startswith("::error"):
|
||||
annotated_errs += 1
|
||||
|
||||
# Count all errors/warnings for reporting/debugging purposes
|
||||
if issue_str.startswith("::error") or issue_str.startswith("::warning"):
|
||||
errs += 1
|
||||
|
||||
# If the path is a Markdown file, lint it directly
|
||||
elif normalized_scan_path.lower().endswith('.md'):
|
||||
total += 1
|
||||
issues_found = lint_file(normalized_scan_path, cfg)
|
||||
|
||||
# Process each issue found
|
||||
for issue_str in issues_found:
|
||||
|
||||
# Always write the issue to the log file for full reporting
|
||||
log_f.write(issue_str + '\n')
|
||||
any_issues = True # Flag to check if any issues were found
|
||||
|
||||
# For GitHub Actions PR annotations: print only if the file is changed
|
||||
# and the issue is on a line that was actually modified or added in the PR
|
||||
if normalized_scan_path in changed_files_set:
|
||||
|
||||
# Extract the line number from the issue string (e.g., ...line=123::)
|
||||
m = re.search(r'line=(\d+)', issue_str)
|
||||
|
||||
if m and int(m.group(1)) in changed_lines_map.get(normalized_scan_path, set()):
|
||||
|
||||
# For GitHub Actions PR annotations: print the annotation
|
||||
# so that GitHub Actions can display it in the PR summary
|
||||
print(issue_str)
|
||||
|
||||
# Count errors on changed lines for the exit code logic
|
||||
if issue_str.startswith("::error"):
|
||||
annotated_errs += 1
|
||||
|
||||
# Count all errors/warnings for reporting/debugging purposes
|
||||
if issue_str.startswith("::error") or issue_str.startswith("::warning"):
|
||||
errs += 1
|
||||
|
||||
# If no issues were found, remove the log file
|
||||
if not any_issues:
|
||||
try:
|
||||
os.remove(args.log_file)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
# Print a debug message to stderr summarizing the linting process
|
||||
print(f"::notice ::Processed {total} files, found {errs} issues.")
|
||||
|
||||
# Exit code: 1 only if there are annotated errors/warnings on changed lines
|
||||
sys.exit(1 if annotated_errs else 0)
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
131
scripts/rtl_ltr_linter_config.yml
Normal file
131
scripts/rtl_ltr_linter_config.yml
Normal file
@@ -0,0 +1,131 @@
|
||||
rtl_config:
|
||||
# Common LTR keywords needing RLM in RTL context
|
||||
ltr_keywords:
|
||||
- HTML
|
||||
- HTML5
|
||||
- CSS
|
||||
- CSS3
|
||||
- ES6
|
||||
- JavaScript
|
||||
- PHP
|
||||
- Python
|
||||
- Java
|
||||
- Ruby
|
||||
- Perl
|
||||
- Swift
|
||||
- Kotlin
|
||||
- Scala
|
||||
- Go
|
||||
- Rust
|
||||
- SQL
|
||||
- API
|
||||
- SDK
|
||||
- IDE
|
||||
- JSON
|
||||
- XML
|
||||
- AJAX
|
||||
- REST
|
||||
- SOAP
|
||||
- GraphQL
|
||||
- Docker
|
||||
- Kubernetes
|
||||
- AWS
|
||||
- Azure
|
||||
- GCP
|
||||
- Git
|
||||
- GitHub
|
||||
- Linux
|
||||
- Unix
|
||||
- macOS
|
||||
- Windows
|
||||
- Android
|
||||
- iOS
|
||||
- React
|
||||
- Angular
|
||||
- Vue
|
||||
- jQuery
|
||||
- Svelte
|
||||
- Bash
|
||||
- Zsh
|
||||
- Vim
|
||||
- Bootstrap
|
||||
- Sass
|
||||
- LESS
|
||||
- TypeScript
|
||||
- CoffeeScript
|
||||
- WordPress
|
||||
- Drupal
|
||||
- Joomla
|
||||
- Django
|
||||
- Flask
|
||||
- Laravel
|
||||
- Symfony
|
||||
- Spring
|
||||
- Gatsby
|
||||
- OpenGL
|
||||
- DirectX
|
||||
- Unity
|
||||
- Unreal Engine
|
||||
- TensorFlow
|
||||
- PyTorch
|
||||
- Keras
|
||||
- Pandas
|
||||
- NumPy
|
||||
- SciPy
|
||||
- Matplotlib
|
||||
- Arduino
|
||||
- Raspberry Pi
|
||||
- Scratch
|
||||
- PostgreSQL
|
||||
- MySQL
|
||||
- MongoDB
|
||||
- SQLite
|
||||
- Oracle
|
||||
- DB
|
||||
- DBMS
|
||||
- OS
|
||||
- MVC
|
||||
- OOP
|
||||
- DevOps
|
||||
- Agile
|
||||
- Scrum
|
||||
- Emacs
|
||||
- IntelliJ
|
||||
- PowerShell
|
||||
- VS Code
|
||||
- Sublime Text
|
||||
- AngularJS
|
||||
|
||||
# LTR symbols/patterns needing LRM in RTL context.
|
||||
ltr_symbols:
|
||||
- C#
|
||||
- C++
|
||||
- F#
|
||||
- .NET
|
||||
- ASP.NET
|
||||
- Vue.js
|
||||
- Node.js
|
||||
- React.js
|
||||
- Express.js
|
||||
- Next.js
|
||||
- Nuxt.js
|
||||
- Objective-C
|
||||
- CI/CD
|
||||
|
||||
# Regex pattern for identifying pure LTR text segments
|
||||
pure_ltr_pattern: "^[\\u0000-\\u007F]+$"
|
||||
|
||||
# Regex pattern for identifying RTL characters
|
||||
rtl_chars_pattern: "[\\u0590-\\u08FF]"
|
||||
|
||||
# HTML directional markers to be recognised
|
||||
rlm_entities: ['‏', '‏', '‏']
|
||||
lrm_entities: ['‎', '‎', '‎']
|
||||
|
||||
# Severity levels for different issue types
|
||||
severity:
|
||||
bidi_mismatch: error
|
||||
keyword: warning
|
||||
symbol: warning
|
||||
pure_ltr: notice
|
||||
author_meta: notice
|
Reference in New Issue
Block a user