جب میں نے اپنا پیکج pub.dev پر شائع کیا تو ڈاؤن لوڈز کی تعداد میں اضافے کے ساتھ پہلے چند دن دلچسپ تھے۔ صرف چند دنوں میں 201 ڈاؤن لوڈ!
پھر کچھ عجیب ہوا۔ تعداد کم کر کے 120 اور پھر 55 کر دی گئی۔ تب مجھے احساس ہوا کہ کچھ غلط ہے۔
میں نے کچھ نہیں توڑا۔ پیکیج میں کچھ بھی نہیں بدلا ہے۔ لوگوں نے اسے استعمال کرنا بند نہیں کیا۔
کھڑکی ہل گئی۔
یہ pub.dev کے بارے میں سب سے زیادہ غلط فہمی والی چیزوں میں سے ایک سے میرا تعارف تھا۔ اس کا مطلب ہے کہ یہاں دکھائے گئے 30 دن کے رولنگ ڈاؤن لوڈ نمبرز کل نہیں ہیں۔ یہ کوئی مجموعی شمار نہیں ہے۔ یہ ایک کھڑکی ہے۔ اور ایک بار جب ابتدائی ڈاؤن لوڈز لانے والی بڑھتی ہوئی تعداد اس مدت سے باہر آجاتی ہے، تو تعداد سکڑ جاتی ہے حالانکہ ہر وہ شخص جس نے پیکیج ڈاؤن لوڈ کیا تھا اسے انسٹال کیا تھا۔
اس احساس نے مجھے خرگوش کے سوراخ سے نیچے بھیج دیا۔ اگر pub.dev صرف 30 دن کی مدت دکھاتا ہے، تو کیا پوری تصویر دیکھنے کا کوئی طریقہ ہے؟ کیا کوئی ایسا API ہے جو مزید بے نقاب کرتا ہے؟ pub.dev اصل میں ہڈ کے نیچے کیا کر رہا ہے؟
یہ مضمون اس بارے میں ہے جو میں نے دریافت کیا اور اس کے اوپر میں نے جو ٹولز بنائے ہیں۔
انڈیکس
30 دن کی مدت کا مسئلہ
جب آپ pub.dev پر ایک پیکج شائع کرتے ہیں، تو پلیٹ فارم ڈاؤن لوڈز کی تعداد ظاہر کرے گا۔ اگر آپ ابھی پیکیج کا صفحہ دیکھیں گے، تو آپ کو ایک نمبر نظر آئے گا جو کہتا ہے "ڈاؤن لوڈ”۔ زیادہ تر ڈویلپرز یہ سمجھتے ہیں کہ یہ پیکج کے شائع ہونے کے بعد سے ڈاؤن لوڈ ہونے کی کل تعداد ہے۔
یہ سچ نہیں ہے۔
pub.dev 30 دن کا رولنگ پیریڈ دکھاتا ہے۔ شمار کرتا ہے کہ پچھلے 30 دنوں میں اور صرف پچھلے 30 دنوں میں ایک پیکج کو کتنی بار ڈاؤن لوڈ کیا گیا۔ اس سے پہلے کی ہر چیز پوشیدہ ہے۔
عملی طور پر اس کا مطلب یہ ہے: پیکیج شروع کریں۔ ٹویٹر، لنکڈ ان، اور ڈویلپر کمیونٹی پر اشتراک کریں۔ آپ کو ایک سپائیک ملتا ہے۔ پہلے ہفتے میں 200 ڈاؤن لوڈ۔ پھر صورت حال حل ہو جاتی ہے۔ ایک ہفتے کے بعد آپ کے پاس 10 ڈاؤن لوڈز ہوں گے۔
لانچ کے وقت: آپ 200 ڈاؤن لوڈ دیکھیں گے۔ 5 ہفتوں کے بعد: آپ کو 50 ڈاؤن لوڈز نظر آئیں گے (صرف آخری 30 دنوں میں) اور 10 ہفتوں کے بعد آپ کو 40 ڈاؤن لوڈز نظر آئیں گے۔
اگرچہ سطحوں میں 75 فیصد کمی واقع ہوئی تھی، لیکن کوئی پیکج ضائع یا تباہ نہیں کیا گیا۔ تقریباً 200 لوگ جو اسے پہلے ہی انسٹال کر چکے تھے خاموشی سے اسے استعمال کر رہے تھے۔ ابتدائی اضافے کے مقابلے میں ڈاؤن لوڈز سست رفتار سے ہوتے رہے۔
کھڑکی ہل گئی اور اسپائکس گر گئے۔ تاہم، pub.dev میں جو کچھ دکھایا گیا تھا اس سے ایسا لگتا تھا کہ پیکج ختم ہو رہا ہے۔
یہ کسی بھی شخص کے لیے گمراہ کن ہو سکتا ہے جو کسی پیکج کی نمو کو ٹریک کرتا ہے۔
pub.dev دراصل ڈاؤن لوڈز کو کس طرح شمار کرتا ہے۔
API کو دیکھنے سے پہلے، یہ سمجھنا اچھا خیال ہے کہ pub.dev ڈاؤن لوڈز کا حساب کیسے لگاتا ہے۔
pub.dev سرور سے پیکج آرکائیو کو ڈاؤن لوڈ کرنے کی تعداد کو شمار کرتا ہے۔ جب آپ بھاگتے ہیں pub get یا flutter pub get آپ کے پروجیکٹ میں، پب ٹول مقامی کو چیک کرتا ہے۔ PUB_CACHE پہلے اگر پیکیج پہلے ہی کیش شدہ ہے تو، کیش شدہ ورژن استعمال کیا جاتا ہے اور کوئی ڈاؤن لوڈ نہیں ہوتا ہے۔ ڈاؤن لوڈز کو صرف اس صورت میں شمار کیا جاتا ہے جب پیکیج کیشے میں نہ ہو۔
یعنی، ڈاؤن لوڈز کی تعداد پیکیج استعمال کرنے والے پروجیکٹس کی تعداد کا پیمانہ نہیں ہے۔ یہ اس بات کا پیمانہ ہے کہ ڈویلپر کو کتنی بار سرور سے کچھ نیا لانا پڑا۔ اگر 1000 ڈویلپرز آپ کا پیکج استعمال کرتے ہیں، لیکن وہ سب پہلے ہی کیش شدہ ہیں، تو اس مدت کے لیے ڈاؤن لوڈز کی تعداد 0 ہے۔
pub.dev اس بارے میں شفاف ہے۔ آفیشل اسکورنگ دستاویز سے: "ڈاؤن لوڈ کی تعداد ایک پیکج کے صارفین کی تعداد کا براہ راست پیمانہ نہیں ہے۔ ایک پیکیج میں نسبتاً کم ڈاؤن لوڈ کی تعداد کے ساتھ زیادہ استعمال ہو سکتا ہے کیونکہ پب کلائنٹ PUB_CACHE"
لہذا، pub.dev میں جو نمبر آپ دیکھتے ہیں وہ اصل استعمال کے مقابلے میں پہلے سے ہی کم ہیں۔ مزید برآں، اس کم گنتی کے صرف آخری 30 دن دکھائے گئے ہیں۔
pub.dev میں API
جب میں نے محسوس کیا کہ pub.dev مجھے صرف ایک ونڈو دکھا رہا ہے، میں نے سب سے پہلے ایک ایسے API کی تلاش کی جو مزید بے نقاب کر سکے۔ pub.dev کے پاس pub.dev آفیشل API دستاویز پر ایک آفیشل API دستاویزات کا صفحہ ہے۔ آئیے اس پر ایک نظر ڈالیں کہ وہاں کیا دستاویز کیا گیا ہے۔
اسکور اختتامی نقطہ
حاصل کریں https://pub.dev/api/packages/{package}/score
یہ آفیشل اینڈ پوائنٹ ہے جو ڈاؤن لوڈ نمبر فراہم کرتا ہے جو آپ pub.dev پر دیکھ سکتے ہیں۔ آپ ہمیں ابھی براہ راست کال کر سکتے ہیں۔
curl https://pub.dev/api/packages/dart_exceptor/score
یہاں جواب ہے:
{
"grantedPoints": 150,
"maxPoints": 160,
"likeCount": 5,
"downloadCount30Days": 174,
"tags": [
"sdk:dart",
"sdk:flutter",
"platform:android",
"platform:ios",
"platform:linux",
"platform:macos",
"platform:web",
"platform:windows"
]
}
downloadCount30Days یہ وہ نمبر ہے جو pub.dev پیکیج کے صفحے پر دکھاتا ہے۔ یہ 30 دن کا رولنگ پیریڈ ہے۔ کچھ زیادہ نہیں، کچھ کم نہیں۔
likeCount اس طرح بہت سے ڈویلپرز نے پیکیج کو پسند کیا۔
grantedPoints اور maxPoints پانا تجزیہ کار سے پب پوائنٹ سکور۔
یہ اختتامی نقطہ سرکاری طور پر تائید شدہ اور سرکاری طور پر دستاویزی ہے۔ بغیر اطلاع کے کوئی تبدیلی نہیں کی جائے گی۔
پیکیج میٹا ڈیٹا اینڈ پوائنٹ
حاصل کریں https://pub.dev/api/packages/{package}
curl https://pub.dev/api/packages/dart_exceptor
یہ اختتامی نقطہ میزبان پب ریپوزٹری تفصیلات V2 کا حصہ ہے۔ pub کمانڈ لائن ٹول خود پیکجوں کو چیک کرنے اور ڈاؤن لوڈ کرنے کے لیے استعمال ہوتا ہے۔ مکمل پیکج میٹا ڈیٹا لوٹاتا ہے، بشمول تمام شائع شدہ ورژن، ہر ورژن کا پب اسپیک، اشاعت کا ٹائم اسٹیمپ، اور پیکیج کے بارے میں مکمل معلومات۔
یہ وہی چیز ہے جسے پب ٹریس اس بات کا تعین کرنے کے لیے استعمال کرتا ہے کہ پیکج پہلی بار کب شائع ہوا تھا۔ اگر پیکج 6 ہفتے پہلے پوسٹ کیا گیا تھا، تو صرف 6 ہفتے ریکارڈ کیے جائیں گے، 52 ہفتے نہیں۔ مضمون کو ایمانداری سے اس کی وضاحت کرنی چاہئے۔ PubTrace اس اختتامی نقطہ سے پہلی اشاعت کی تاریخ کو پڑھتا ہے اور اسے درست طریقے سے چارٹ کو لیبل کرنے کے لیے استعمال کرتا ہے۔
جواب بہت اچھا ہے۔ PubTrace میں اہم فیلڈز ہیں:
{
"name": "dart_exceptor",
"latest": {
"version": "1.1.2",
"published": "2026-07-12T10:00:00.000Z"
},
"versions": [
{
"version": "1.0.0",
"published": "2026-07-01T10:00:00.000Z"
}
]
}
ناشر کا اختتامی نقطہ
حاصل کریں https://pub.dev/api/packages/{package}/publisher
curl https://pub.dev/api/packages/dart_exceptor/publisher
جواب:
{
"publisherId": null
}
یا تصدیق شدہ پبلشرز کے لیے:
{
"publisherId": "dart.dev"
}
PubTrace اسے یہ دکھانے کے لیے استعمال کرتا ہے کہ پیکیج کس نے بنایا ہے۔ اگر پیکیج ایک تصدیق شدہ پبلشر کے تحت ہے، تو اس کے مواد کو ظاہر کیا جائے گا۔ بصورت دیگر، اپ لوڈ کنندہ کی شناخت کو غیر تصدیق شدہ کے بطور نشان زد کر دیا جائے گا۔
یہ اختتامی نقطہ سرکاری طور پر دستاویزی اور سرکاری طور پر معاون ہے۔
میٹرکس اینڈ پوائنٹس: مکمل کہانی
یہیں سے چیزیں دلچسپ ہوجاتی ہیں۔
pub.dev کی عوامی سطح کو دریافت کرتے ہوئے، میں نے ایک اختتامی نقطہ دیکھا جو سرکاری API دستاویزات میں نہیں ہے، لیکن عوامی طور پر قابل رسائی ہے اور خود pub.dev کے ذریعہ اندرونی طور پر استعمال کیا جاتا ہے۔
حاصل کریں https://pub.dev/api/packages/{package}/metrics
curl https://pub.dev/api/packages/dart_exceptor/metrics
pub.dev اس فرق کے بارے میں واضح ہے۔ سرکاری API دستاویزات سے: "pub.dev عوامی طور پر دستیاب API کے اختتامی نکات کو بے نقاب کر سکتا ہے، لیکن اگر وہ یہاں دستاویزی نہیں ہیں، تو ہم انہیں سرکاری طور پر تعاون یافتہ نہیں سمجھتے اور پیشگی اطلاع کے بغیر انہیں تبدیل یا ہٹا سکتے ہیں۔”
میٹرک اینڈ پوائنٹ درج ذیل میں سے ایک ہے: یہ عوامی ہے۔ کوئی بھی گا سکتا ہے۔ تاہم، یہ سرکاری طور پر تعاون یافتہ نہیں ہے اور تبدیل ہو سکتا ہے۔ ہم پب ٹریس کا استعمال کرتے ہیں کیونکہ یہ ہمارے حساس ڈیٹا کا واحد ذریعہ ہے اور اس اینڈ پوائنٹ سے تیار کردہ تمام نمبرز کی آزادانہ طور پر ٹرمینل کے ساتھ کوئی بھی شخص تصدیق کر سکتا ہے۔
اس اختتامی نقطہ کے جواب میں شامل ہیں: scorecard مخالفت weeklyVersionDownloads. یہ pub.dev کے اپنے ہفتہ وار چارٹس پر مبنی ہے۔ اس میں 52 اندراجات شامل ہیں، پچھلے سال کے دوران ہر ہفتے کے لیے ایک، سب سے حالیہ سے شروع ہوتی ہے۔ ہر آئٹم ورژن کی حد کے لحاظ سے ڈاؤن لوڈز کی درجہ بندی کرتا ہے: ڈاؤن لوڈز کی کل تعداد، بڑے ورژن کی حد، معمولی ورژن کی حد، اور پیچ ورژن کی حد۔
متعلقہ حصوں کا ایک آسان ورژن درج ذیل ہے:
{
"scorecard": {
"weeklyVersionDownloads": {
"totalWeeklyDownloads": [45, 38, 62, 71, 28, 19, 33, ...],
"majorRangeWeeklyDownloads": [...],
"minorRangeWeeklyDownloads": [...],
"patchRangeWeeklyDownloads": [...]
}
}
}
صف میں 52 آئٹمز ہیں۔ انڈیکس 0 حالیہ ہفتہ ہے۔ انڈیکس 51 ڈیٹاسیٹ میں سب سے پرانی ریاست ہے۔
pub.dev آخری چار آئٹمز کا تقریباً مجموعہ دکھاتا ہے۔ totalWeeklyDownloads (تقریبا 30 دن)۔ API کے جواب میں کل 52 آئٹمز موجود ہیں۔ استعمال نہیں کیا گیا۔ یہ pub.dev UI کو دیکھنے والے ہر شخص کے لیے پوشیدہ ہے۔
تب میں نے کچھ بنانے کا فیصلہ کیا۔
پب ٹریس کی تعمیر
ایک بار جب ہم سمجھ گئے کہ میٹرکس اینڈ پوائنٹ کیا سامنے آیا ہے، سوال آسان تھا: جب بھی آپ اپنے پیکیج کی تاریخ کو چیک کرنا چاہتے ہیں تو ان APIs کو دستی طور پر کیوں کال کریں جب آپ کوئی ایسی چیز بنا سکتے ہیں جسے پوری ڈارٹ اور فلٹر کمیونٹی استعمال کر سکے۔
اسی طرح PubTrace پیدا ہوا۔
پب ٹریس ایک مفت ٹول جو pub.dev پر کسی بھی ڈارٹ یا فلٹر پیکج کے لیے ڈاؤن لوڈ کی مکمل 52 ہفتوں کی تاریخ دکھاتا ہے۔ کوئی اکاؤنٹ درکار نہیں۔ سائن اپ نہ کریں۔ اگر آپ pubtrace.dev پر جاتے ہیں اور پیکیج کا نام درج کرتے ہیں، تو آپ کو پوری تصویر نظر آئے گی جو pub.dev میں نہیں ہے۔
PubTrace کیا کرتا ہے۔
پبٹریس ایک مفت اور کھلا ٹول ہے جو https://pubtrace.dev پر دستیاب ہے۔ اگر آپ pub.dev میں شائع شدہ پیکیج کا نام درج کرتے ہیں، تو PubTrace درج ذیل دکھاتا ہے:
یہ مجموعی ڈاؤن لوڈ چارٹ ہے۔ 52 ہفتہ کا لائن چارٹ وقت کے ساتھ ساتھ ڈاؤن لوڈ میں کل اضافہ دکھا رہا ہے۔ یہ 30 دن کی مدت نہیں ہے۔ یہ ہفتہ وار بار چارٹ نہیں ہے۔ ایک رننگ کل جو تمام پیکجوں کی اصل ترقی کی رفتار کو ظاہر کرتا ہے۔
غلطی پوری ہسٹری ونڈو میں کل ڈاؤن لوڈز، لائکس، پبلشر کی معلومات، اور پبلشر کی معلومات سبھی براہ راست pub.dev کے اپنے API سے اس وقت کھینچی جاتی ہیں جب آپ صفحہ کی درخواست کرتے ہیں۔
ڈیٹا کتنا پرانا ہے۔ پب ٹریس دکھاتا ہے کہ آخری بار ڈیٹا کب حاصل کیا گیا تھا۔ کیشنگ واضح ہے۔ ریئل ٹائم ڈیٹا موجود نہیں ہے۔ یہ ایک گھنٹے میں تازہ ہو جاتا ہے۔
تصدیقی پینل۔ ہر صفحہ میں ایک تصدیقی سیکشن ہوتا ہے جو ڈیٹا لانے کے لیے استعمال ہونے والی کرل کمانڈ کو ظاہر کرتا ہے۔ آپ تمام کمانڈز کو کاپی کر سکتے ہیں، انہیں اپنے ٹرمینل میں چلا سکتے ہیں، اور تمام نمبرز کو خود دوبارہ تیار کر سکتے ہیں۔ یہ پب ٹریس کی سب سے اہم خصوصیت ہے۔ اس کا مطلب ہے کہ آپ کو PubTrace پر بھروسہ کرنے کی ضرورت نہیں ہے۔ آپ اسے ابھی اپنے لیے چیک کر سکتے ہیں۔
اگر آپ PubTrace میں dart_Exceptionor تلاش کرتے ہیں، تو یہ ہے جو آپ pub.dev کے مقابلے میں دیکھتے ہیں:
pub.dev شوز: 174 ڈاؤن لوڈز (30 دن کی مدت) پبٹریس شوز: 8 ہفتوں کے دوران مجموعی طور پر 174 ڈاؤن لوڈ، چارٹ ظاہر کرتا ہے کہ ڈاؤن لوڈز کب ہوئے اور تعداد کیسے بڑھی۔
دونوں نمبر ایک ہی pub.dev ڈیٹا سے ہیں۔ پب ٹریس آپ کو پوری تصویر دکھاتا ہے۔
آپ کو کسی ڈویلپر، کسی پیکیج، کسی اکاؤنٹ کی ضرورت نہیں ہے۔ https://pubtrace.dev پر جائیں اور اسے آزمائیں۔
آرکیٹیکچرل فیصلہ: کوئی ڈیٹا بیس نہیں۔
پب ٹریس کا سب سے اہم تعمیراتی فیصلہ ڈیٹا کو ذخیرہ نہ کرنا تھا۔
PubTrace میں آپ جو بھی نمبر دیکھتے ہیں اس وقت آپ pub.dev کے API سے ریئل ٹائم میں کھینچے جاتے ہیں جب آپ پیکیج کی درخواست کرتے ہیں۔ ڈاؤن لوڈ کی تاریخ کا کوئی ڈیٹا بیس نہیں ہے۔ کوئی تاریخی ریکارڈ نہیں ہے۔ تمام چارٹس کو موجودہ سرور پر pub.dev کے اپنے ڈیٹا سے دوبارہ شمار کیا جاتا ہے۔
یہ ایک وجہ سے جان بوجھ کر انتخاب تھا: ایمانداری۔
اگر PubTrace اپنا تاریخی ڈیٹا ذخیرہ کرتا ہے، تو آپ کو یقین کرنا چاہیے کہ PubTrace کا ڈیٹا درست ہے۔ مجھے اس بات پر بھروسہ کرنے کی ضرورت ہے کہ میں نے اسے درست طریقے سے جمع کیا ہے، کہ جمع کرنے کی مدت کے دوران کوئی ڈاون ٹائم نہیں تھا، اور یہ کہ میرا ذخیرہ خراب نہیں ہوا تھا۔ آپ اپنے بروکر پر بھروسہ کریں گے۔
ڈیٹا بیس لیس فن تعمیر کے ساتھ، آپ کو PubTrace پر بھروسہ کرنے کی ضرورت نہیں ہے۔ وہ تمام نمبر جو PubTrace دکھاتا ہے curl کمانڈ کے ساتھ دوبارہ تیار کیا جا سکتا ہے۔ PubTrace pub.dev کے اپنے ڈیٹا کے اوپر ایک کمپیوٹیشنل پرت ہے اور اپنے آپ میں سچائی کا ذریعہ نہیں ہے۔
1 گھنٹہ کیش
ہر درخواست کے لیے pub.dev سے لائیو بازیافت کرنا فضول اور pub.dev سرور کے لیے بدتمیز ہے۔ پب ٹریس جوابات کو 1 گھنٹے کے لیے محفوظ کرتا ہے۔ اس کا مطلب ہے:
جب میں اوپر دیکھتا ہوں۔ dart_exceptor 3 PM پر، PubTrace نتائج کو pub.dev سے کھینچتا ہے اور انہیں کیش کرتا ہے۔ اگر کسی اور کو مل جائے۔ dart_exceptor آپ کو 3:30 PM پر کیش شدہ نتائج موصول ہوں گے۔ شام 4 بجے، کیشے کی میعاد ختم ہو جاتی ہے اور اگلی درخواست پر نیا ڈیٹا حاصل کیا جاتا ہے۔
کیش واضح اور صارف کے لیے مرئی ہے۔ آپ دیکھ سکتے ہیں کہ آخری بار ڈیٹا کب درآمد کیا گیا تھا۔ کوئی دعویٰ نہیں ہے کہ ڈیٹا ریئل ٹائم ہے۔ یہ ایک گھنٹے میں تازہ ہو جاتا ہے۔
تصدیقی پینل
پب ٹریس میں ہر پیکج کے صفحے پر تصدیقی پینل ہوتا ہے۔ یہ اس پیکیج کے لیے ڈیٹا درآمد کرنے کے لیے استعمال ہونے والی درست curl کمانڈ کو دکھاتا ہے۔ کوئی بھی ڈویلپر اس کمانڈ کو کاپی کر سکتا ہے، اسے ٹرمینل میں چلا سکتا ہے، اور وہ تمام نمبر دوبارہ تیار کر سکتا ہے جو PubTrace دکھاتا ہے۔
یہ صرف ایک اچھی خصوصیت نہیں ہے۔ یہ نقطہ ہے. PubTrace کی قدر پر اعتماد نہیں کرنا ہے۔ آپ کو ایسا کرنے کی ضرورت نہیں ہے۔
PubTrace نمبروں کا حساب کیسے لگاتا ہے۔
حسابات کو سمجھنے سے آپ کو نتائج پر بھروسہ کرنے میں مدد ملے گی۔
اسٹیک شدہ چارٹ

پب ٹریس میٹرکس اینڈ پوائنٹ سے ہفتہ وار 52 ڈاؤن لوڈز لیتا ہے اور چلنے والے کل کا حساب لگاتا ہے۔ ہفتہ 52 نقطہ آغاز ہے۔ ہر اگلے ہفتے، ڈاؤن لوڈز کو چلانے والے کل میں شامل کیا جاتا ہے۔ نتیجہ ایک مجموعی ترقی کا چارٹ ہے جو آپ کے پیکیج کی ڈاؤن لوڈ کی تاریخ کی اصل رفتار کو ظاہر کرتا ہے۔
یہ بنیادی طور پر اس سے مختلف ہے جو pub.dev دکھاتا ہے۔ pub.dev ہفتہ وار ڈاؤن لوڈز کا ایک بار چارٹ دکھاتا ہے، جو ایک مستقل پیکج بناتا ہے جس میں مسلسل 30 ڈاؤن لوڈز فی ہفتہ سست نظر آتے ہیں۔ پب ٹریس مجموعی ڈاؤن لوڈز کا ایک لائن چارٹ دکھاتا ہے۔ اس سے ظاہر ہوتا ہے کہ ایک ہی پیکج ہر ہفتے بتدریج بڑھ رہا ہے۔
دونوں ایک ہی ڈیٹا دکھا رہے ہیں۔ اسٹیک شدہ منظر پورے مواد کو دکھاتا ہے۔
نوجوان پیکج کے قوانین
اگر آپ کا پیکج 52 ہفتوں سے کم کے لیے شائع ہوا ہے، تو PubTrace دستیاب ڈیٹا کے ہفتوں کی اصل تعداد کے ساتھ چارٹ کو لیبل کرتا ہے۔ 8 ہفتے پہلے پوسٹ کیے گئے پیکجز میں 8 ہفتوں کی تاریخ واضح طور پر نشان زد اور ڈسپلے ہوگی۔ PubTrace لاپتہ ریاستوں کا اندازہ یا اندازہ نہیں لگاتا ہے۔ یہ بالکل ظاہر کرتا ہے کہ ڈیٹا میں کیا ہے اور کچھ نہیں۔
کٹا ہوا تاریخ کا اصول
میٹرکس اینڈ پوائنٹ 52 ہفتوں کا ڈیٹا اسٹور کرتا ہے۔ ایک سال سے پرانے پیکجز کے لیے، 52 ہفتوں سے زیادہ پرانا ڈیٹا اس اینڈ پوائنٹ پر دستیاب نہیں ہے۔ PubTrace اس بارے میں شفاف ہے۔ چارٹ 52 ہفتے دکھاتا ہے۔ پرانے پیکجوں کے لیے، وہ پہلے دن سے لائف ٹائم ڈاؤن لوڈ دکھانے کا دعوی نہیں کرتے ہیں۔
52 ہفتوں سے کم کے پیکجوں کے لیے، چارٹ لانچ کے بعد سے سب کچھ دکھاتا ہے، یعنی پوری تاریخ۔
ذہنی حالت کی جانچ
پب ٹریس کے ذریعہ کئے گئے تمام حسابات کی خام API جواب کے خلاف تصدیق کی جا سکتی ہے۔ پیکیج کے لیے مجموعی طور پر درج ذیل آئٹمز میں سے تمام 52 کا مجموعہ ہے: totalWeeklyDownloads. آپ curl کمانڈ کو براہ راست چلا سکتے ہیں اور وہی نمبر حاصل کرنے کے لیے جو PubTrace دکھاتا ہے، کو جمع کر سکتے ہیں۔ اگر یہ مختلف ہے تو کچھ غلط ہے اور میں اس کے بارے میں جاننا چاہوں گا۔
یہ انجینئرز کی مدد کیسے کرتا ہے۔
پیکج کے مصنفین کے لیے
سب سے فوری قدر آپ کے پیکیج کی اصل نمو کو سمجھنا ہے۔ pub.dev میں آج کے نمبر پیکیج کی کہانی نہیں بتاتے ہیں۔ یہ پچھلے 30 دنوں کا اسنیپ شاٹ ہے۔ پب ٹریس آپ کو 52 ہفتوں کا مکمل راستہ دکھاتا ہے، تاکہ آپ دیکھ سکیں کہ آیا آپ کا پیکج بڑھ رہا ہے، مستحکم ہے یا گھٹ رہا ہے اور حقیقی ڈیٹا کی بنیاد پر فیصلے کر سکتے ہیں۔
محکموں اور ثبوتوں کے لیے
ڈارٹ اور فلٹر کمیونٹیز میں بہت سے انجینئرز سینئر کرداروں کے لیے درخواست دے رہے ہیں جن کے لیے ان سے پورٹ فولیوز بنانے اور کمیونٹی کے تعاون اور تکنیکی اثرات کا مظاہرہ کرنے کی ضرورت ہوتی ہے۔ حقیقت یہ ہے کہ pub.dev کے 55 ڈاؤن لوڈز ہیں قائل ثبوت نہیں ہے۔ قابل تصدیق ذرائع کے ساتھ 8 ہفتوں کے دوران 174 کے مسلسل بڑھتے ہوئے ڈاؤن لوڈز کو ظاہر کرنے والا ایک مجموعی چارٹ بہت مختلف کہانی بیان کرتا ہے۔
PubTrace آپ کو پوری تصویر دیتا ہے اور آپ کو اسے ثابت کرنے کے لیے ٹولز دیتا ہے۔ تصدیقی پینل خاص طور پر اس بات کو یقینی بنانے کے لیے موجود ہیں کہ نمبروں کی آزادانہ طور پر تصدیق کی جا سکے۔ مجھے آپ پر بھروسہ کرنے کی ضرورت نہیں ہے۔ ڈیٹا خود بولتا ہے اور pub.dev کے اپنے API میں پایا جا سکتا ہے۔
کوئی بھی ڈویلپر PubTrace کے ذریعے pub.dev میں تمام عوامی پیکیج دیکھ سکتا ہے۔ آپ پیکجوں کا آپس میں موازنہ کر سکتے ہیں۔ آپ دیکھ سکتے ہیں کہ پہلے سال کے دوران آپ کا پیکج کیسے بڑھا ہے۔ آپ مزید باخبر فیصلے کر سکتے ہیں کہ کن پیکجوں پر انحصار کرنا ہے pub.dev کی مجموعی رفتار کی بنیاد پر، نہ صرف اس کی موجودہ 30 دن کی مدت۔
ڈارٹ اور فلٹر ماحولیاتی نظام کی شفافیت کے لیے
ڈارٹ اور فلٹر ماحولیاتی نظام بڑھ رہا ہے۔ ہر ہفتے مزید پیکجز پوسٹ کیے جا رہے ہیں۔ تاہم، ترقی کو سمجھنے کے لیے ہمارے ٹولز pub.dev کی 30 دن کی ونڈو اور ہفتہ وار بار چارٹس تک محدود تھے۔ PubTrace تاریخی مرئیت کی ایک پرت کا اضافہ کرتا ہے جو ہمیشہ آپ کے ڈیٹا میں موجود ہے لیکن UI میں نظر نہیں آتی۔
تمام حسابات pub.dev کے اپنے عوامی API سے اخذ کیے گئے ہیں۔ کچھ بھی ایجاد نہیں ہوا ہے۔ API فراہم کرتا ہے اس سے آگے کچھ بھی فرض نہیں کیا جاتا ہے۔ مقصد ایماندار، اعلیٰ معیار کا ڈیٹا ہے جس کی کوئی بھی انجینئر تصدیق کر سکتا ہے۔
نتیجہ
pub.dev کے 30 دن کے رولنگ ڈاؤن لوڈ نمبرز پر ایک نظر ہمیں کچھ بتاتی ہے۔ یہ آپ کو سب کچھ نہیں بتاتا۔ یہ ونڈو صرف پیکیج کے مصنفین کے لیے کافی نہیں ہے جو ترقی کو سمجھنے کی کوشش کر رہے ہیں اور کمیونٹی جو انحصار کے بارے میں باخبر فیصلے کرنے کی کوشش کر رہی ہے۔
مزید مکمل تصویر کے لیے ڈیٹا موجود ہے۔ pub.dev اپنے میٹرکس اینڈ پوائنٹ کے ذریعے ہفتہ وار ڈاؤن لوڈ کی تاریخ کو ظاہر کرتا ہے۔ آفیشل API میٹا ڈیٹا، پبلشر کی معلومات اور اسکورز کو ظاہر کرتا ہے۔ PubTrace ان سب کو یکجا کرتا ہے تاکہ ایک مجموعی منظر کا حساب لگایا جا سکے اور اسے ایماندارانہ، قابل تصدیق اور مفید طریقے سے پیش کیا جا سکے۔
کوئی ڈیٹا بیس نہیں ہے۔ کوئی اقتباس نہیں ہے۔ اعتماد کی ضرورت نہیں۔ pub.dev کے اپنے API پر curl کمانڈز کے ذریعے تمام نمبروں کا پتہ لگایا جا سکتا ہے۔
اگر آپ اپنا پیکج pub.dev پر شائع کرتے ہیں تو آپ کے نمبر اس سے بہتر ہوں گے جو pub.dev دکھاتا ہے۔ اصل کہانی دیکھیں۔
دورہ https://pubtrace.dev. براہ کرم اس پیکیج کا نام یا پیکیج درج کریں جس کے بارے میں آپ کو دلچسپی ہے۔ تصدیقی پینل کو چیک کریں۔ curl کمانڈ کو براہ راست چلانے کی کوشش کریں۔ اپنی ٹیم کے ساتھ لنک کا اشتراک کریں۔
ڈیٹا ہمیشہ موجود رہا ہے۔ اب آپ اسے دیکھ سکتے ہیں۔