Skip to content

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IranGit Logo

IranGit

دسترسی سریع، پایدار و بدون VPN به GitHub

یک کلاینت سبک، امن و استریم‌محور برای مشاهده و دانلود محتوای GitHub در ایران





🚀 دربارهٔ ایران‌گیت

ایران‌گیت یک کلاینت مستقل و بسیار سریع برای GitHub است که به کاربران ایرانی اجازه می‌دهد بدون نیاز به VPN، محتوای GitHub را مشاهده و دانلود کنند.

ایران گیت هیچ داده‌ای را روی دیسک ذخیره نمی‌کند و تمام فایل‌ها به‌صورت استریم واقعی منتقل می‌شوند.
تمام درخواست‌ها مستقیم به GitHub ارسال می‌شوند و هیچ تغییری در محتوای اصلی ایجاد نمی‌شود.


✨ ویژگی‌ها


🛰️ دسترسی و مشاهده

🔹 بدون نیاز به VPN

تمام داده‌ها مستقیم از GitHub دریافت می‌شوند.

🔹 مشاهدهٔ کامل پروفایل‌ها

  • اطلاعات کاربر
  • آواتار
  • ریپازیتوری‌ها (مرتب‌شده بر اساس ستاره‌ها)

🔹 مرور کامل ریپازیتوری

  • رندر حرفه‌ای README
  • تبدیل خودکار لینک‌های blobraw
  • نمایش فایل‌ها و فولدرها
  • نمایش ساختار پروژه (Tree View)
  • نمایش ریلیزها با Markdown HTML

📥 دانلود و استریم

🔹 دانلود ZIP

  • دانلود ZIP ریپازیتوری
  • استریم واقعی بدون ذخیره‌سازی
  • پشتیبانی از ادامه دانلود (Range)

🔹 دانلود Asset

  • پشتیبانی از فایل‌های حجیم
  • استریم chunk-based
  • کنترل همزمانی با Semaphore

⚡ عملکرد و بهینه‌سازی

🔹 کش هوشمند در RAM

  • اضافه شدن LRU Cache
  • اضافه شدن TTL
  • اضافه شدن Circuit Breaker
  • کاهش شدید تعداد درخواست‌های GitHub
  • افزایش سرعت و پایداری

🔹 اضافه شدن Circuit Breaker

  • جلوگیری از overload
  • بازگشت خودکار پس از زمان مشخص

🔹اضافه شدن Rate Limit داخلی

برای جلوگیری از سوءاستفاده:

  • جستجو
  • RAW
  • دانلودها

🖼️ نمونه تصاویر (Screenshots)

صفحه اصلی

صفحه پروفایل کاربر

صفحه مخزن


🧠 معماری ایران گیت

ایران گیت از سه کلاینت مجزا استفاده می‌کند:

نوع کلاینت کاربرد محدودیت
API Client پروفایل، ریپو، سرچ سریع، کم‌مصرف
RAW Client فایل‌های raw.githubusercontent محدودیت متوسط
Download Client ZIP و Asset محدودیت شدید + استریم

ویژگی‌های معماری:

  • بدون پروکسی
  • بدون ذخیره‌سازی
  • connection pool کنترل‌شده
  • semaphore برای کنترل دانلودهای همزمان
  • circuit breaker برای جلوگیری از overload

📦 نصب و اجرا

1) کلون پروژه

git clone https://github.com/Scorpian-my/IranGit
cd IranGit

2) نصب وابستگی‌ها

(اختیاری) ساخت محیط مجازی:

python -m venv venv
venv\Scripts\activate   # Windows
source venv/bin/activate   # Linux / macOS

نصب کتابخانه‌ها:

pip install -r requirements.txt

3) افزودن توکن GitHub

فایل .env را ویرایش کرده و توکن خود را اضافه کنید

GITHUB_TOKEN=your_github_token_here

4) اجرای پروژه

python main.py


🤝 مشارکت در توسعهٔ IranGit

از مشارکت شما در توسعهٔ IranGit با آغوش باز استقبال می‌کنیم.
این پروژه یک ابزار عمومی و آزاد است و هرگونه کمک شما—از گزارش باگ گرفته تا توسعهٔ قابلیت‌های جدید—مستقیماً به بهبود تجربهٔ کاربران ایرانی کمک می‌کند.

🔧 چگونه می‌توانید مشارکت کنید؟

1) گزارش باگ‌ها

اگر با خطا، رفتار غیرمنتظره یا مشکل عملکردی روبه‌رو شدید:

  • یک Issue باز کنید
  • توضیح کامل + اسکرین‌شات + لاگ (در صورت وجود) قرار دهید

2) پیشنهاد قابلیت‌های جدید

اگر ایده‌ای برای بهبود سرعت، امنیت، UI یا معماری دارید:

  • در بخش Issues یک Feature Request ثبت کنید
  • توضیح دهید چرا این قابلیت مفید است

3) ارسال Pull Request

اگر قصد دارید کد ارسال کنید:

  • ریپو را Fork کنید
  • یک Branch جدید بسازید
  • تغییرات را اعمال کنید
  • Pull Request با توضیحات کامل ارسال کنید

4) بهبود مستندات

هرگونه کمک در موارد زیر ارزشمند است:

  • بهبود README
  • نوشتن راهنمای نصب
  • توضیح معماری
  • افزودن مثال‌ها و اسکرین‌شات‌ها

📌 قوانین مشارکت (Contribution Guidelines)

برای حفظ کیفیت پروژه:

  • کد باید تمیز، خوانا و قابل نگه‌داری باشد
  • از اضافه‌کردن وابستگی‌های غیرضروری خودداری کنید
  • برای قابلیت‌های جدید، تست و توضیح کافی ارائه دهید
  • تغییرات بزرگ را قبل از شروع، در Issue مطرح کنید
  • ساختار پوشه‌ها و معماری پروژه را رعایت کنید

❤️ قدردانی

هر قدم کوچک شما در ادامه راه ایران گیت تاثیر زیادی دارد ما با آغوش باز از همراهی شما استقبال می‌کنیم.

About

IranGit is a fast, secure, and reliable GitHub proxy client built to deliver stable access and optimal performance during network restrictions.

Resources

Stars

24 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages