Zinnector®

WordPress ہوسٹنگ کے لیے ڈویلپر CLI

Zinnector® صرف Node کے علاوہ کچھ بھی انسٹال کیے بغیر WordPress کو مقامی طور پر بناتا ہے — نہ Docker، نہ MAMP — پھر جو کچھ آپ نے بنایا ہے اسے اس ہوسٹنگ سلاٹ کے ساتھ چیک کرتا ہے جہاں آپ ڈیپلوائے کرنے والے ہیں اور آپ کے پش کرنے سے پہلے آپ کو بتاتا ہے کہ کیا مماثلت نہیں رکھے گا۔ اسے npm install -g zinnector کے ساتھ انسٹال کریں۔ یہ مفت ہے، MIT لائسنس یافتہ ہے اور اسی پبلک API پر بنایا گیا ہے جس پر یہاں کی باقی تمام چیزیں ہیں۔

براؤزر میں ایک کوڈ ایڈیٹر، جس میں کھلی ہوئی فائل کے ساتھ فائل ٹری اور اس کے اندر کرسر موجود ہے۔

پانچ احکامات، اور درمیانی حکم اصل بات ہے

زیادہ تر ہوسٹنگ CLI ڈپلائی پر شروع ہوتے ہیں۔ Zinnector® اس سے پہلے شروع ہوتا ہے — یہ آپ کے ساتھ مل کر سائٹ تیار کرتا ہے، اور پھر آپ کے کام کو اس مشین کے مطابق جانچتا ہے جس پر آپ اسے بھیجنے والے ہیں۔ "یہ میرے لیپ ٹاپ پر چلا تھا" اور "یہ سرور پر چلتا ہے" کے درمیان کا خلاء وہ جگہ ہے جہاں دوپہریں ضائع ہوتی ہیں، اور یہ خلاء قابل پیمائش ہے۔

نیا zinnector

ایک ایسی سائٹ، پلگ اِن یا بلاک تھیم تیار کریں جو فوری طور پر بوٹ ہو جائے۔ کوئی پلیس ہولڈر فائلیں نہیں، کوئی TODOs نہیں — پلگ اِن فعال ہو جاتا ہے اور تھیم کے بنتے ہی اسے منتخب کیا جا سکتا ہے۔

zinnector dev

سیکنڈوں میں آپ کی مشین پر ایک حقیقی WordPress، جو آپ کے اپنے پلگ انز اور تھیمز پیش کرتا ہے، بغیر Docker اور آپ کے PATH میں PHP کے بغیر۔ ڈیولپمنٹ کے لیے 5.2 سے 8.5 تک کوئی بھی PHP منتخب کریں۔

زینیکٹر چیک

فلائٹ سے پہلے کی جانچ۔ آپ کے تیار کردہ مواد کا اس سلاٹ سے موازنہ کرتا ہے جس پر آپ تعینات کرنے والے ہیں اور پش کرنے سے پہلے ہر مماثلت کی کمی — اور ہر اس جانچ کا جو وہ نہیں کر سکا — نام بتاتا ہے۔

zinnector پش

ابتدائی جانچ کریں، اپنے کمٹس پش کریں، ڈیپلائمنٹ شروع کریں اور مکمل ہونے تک اس کی نگرانی کریں۔ اگر یہ ناکام ہو جائے تو بلڈ لاگ صرف ایک کمانڈ کی دوری پر ہے۔

zinnector ai

اپنے پروجیکٹ اور اپنی سائٹ کو سیاق و سباق کے طور پر استعمال کرتے ہوئے، ٹرمینل سے اسسٹنٹ سے پوچھیں۔ یہ آپ کے اپنے اکاؤنٹ کے تحت پلیٹ فارم پر چلتا ہے، لہذا آپ کی مشین پر کوئی ماڈل کی (کلید) کبھی محفوظ نہیں ہوتی ہے۔

دو منٹ میں چیک کریں کہ یہ کام کرتا ہے، اکاؤنٹ کی ضرورت نہیں

چھ کمانڈز، ترتیب وار، اور ہر ایک پر کامیابی کیسی نظر آتی ہے۔ یہاں سب کچھ آپ کی اپنی مشین پر چلتا ہے؛ API کلید کی ضرورت صرف اس وقت ہوتی ہے جب آپ ہوسٹنگ سلاٹ تک پہنچتے ہیں۔

  1. اسے انسٹال کریں

    Node 24 یا اس سے جدید پر npm install -g zinnector چلائیں۔ اگر npm پر EBADENGINE ظاہر ہوتا ہے، تو آپ کا Node 24 سے پرانا ہے — nodejs.org سے موجودہ LTS انسٹال کریں اور انسٹالیشن دوبارہ چلائیں۔

  2. ورژن چیک کریں

    zinnector --version ورژن کا نمبر جیسے کہ 0.1.2 پرنٹ کرتا ہے۔ 24 سے پرانے Node پر یہ ایک پیغام پرنٹ کرتا ہے جس میں کہا گیا ہے کہ Node 24 یا نیا درکار ہے، اور بند ہو جاتا ہے۔

  3. مدد پڑھیں

    zinnector --help نیچے ہر کمانڈ کو ایک سطری مقصد کے ساتھ درج کرتا ہے۔ ہر کمانڈ کا اپنا --help آپشن بھی ہوتا ہے۔

  4. سائٹ کا بنیادی ڈھانچہ بنائیں

    zinnector new my-site ایک ایسا پروجیکٹ بناتا ہے جو فوری طور پر بوٹ ہو جاتا ہے — ایک zinnector.json، ایک wp-content ٹری اور ایک README — اور چلانے کے لیے اگلے کمانڈز پرنٹ کرتا ہے۔

  5. اسے چلائیں

    cd my-site، پھر zinnector dev۔ پہلی بار چلانے پر WordPress کا رن ٹائم ڈاؤن لوڈ کرنے کی ایک بار درخواست کی جائے گی (تقریباً 570 ایم بی، جو CLI کے اپنے کیشے میں رکھا جاتا ہے، کبھی آپ کے پروجیکٹ میں نہیں)۔ کامیابی “running at http://127.0.0.1:9400” کی طرح نظر آتی ہے۔

  6. اسے براؤزر میں کھولیں

    http://127.0.0.1:9400 ایک نئی WordPress سائٹ ہے؛ /wp-admin پہلے سے سائن ان شدہ ڈیش بورڈ کھولتا ہے۔ wp-content/plugins میں کوئی پلگ ان ڈالیں اور اگلی ری لوڈنگ پر وہ وہاں موجود ہوگا۔

  7. پھر، ایک ہوسٹنگ سلاٹ کے ساتھ

    zinnector login، zinnector link، zinnector check، zinnector push — جو آپ نے بنایا ہے اسے سلاٹ کے مقابل پہلے سے جانچیں، پھر تعینات کریں اور اس کے مکمل ہونے کا مشاہدہ کریں۔

ابتدائی جانچ، تفصیل سے

آپ نے PHP 8.3 پر تعمیر کیا۔ سلاٹ 8.1 چلاتا ہے۔ جب تک سائٹ وائٹ اسکرین نہیں ہو جاتی، آپ کو کچھ معلوم نہیں ہوتا۔ یہی وہ مسئلہ ہے جس کے لیے یہ کمانڈ موجود ہے، اور یہ وہی ہے جو اس پلیٹ فارم کے مالک نے نام لے کر مانگی تھی۔ ®Zinnector® دونوں ماحول پڑھتا ہے اور انہیں آمنے سامنے رکھتا ہے — پھر بھی آپ کو ڈیپلائے کرنے کی اجازت دیتا ہے، کیونکہ ہو سکتا ہے آپ کے پاس کوئی وجہ ہو۔

PHP، دیانتداری سے درجہ بند

بڑے ورژن کا فرق زیادہ شدت کے ساتھ نشان زد کیا جاتا ہے کیونکہ یہ یقینی طور پر سائٹ کو خراب کر دیتا ہے؛ چھوٹے فرق کو کم شدت کے ساتھ نشان زد کیا جاتا ہے۔ ہر چیز کو نازک قرار دینا لوگوں کو صرف انتباہ کو نظر انداز کرنا سکھاتا ہے۔

ڈسک اور فائل کی تعداد، الگ سے

ایک WordPress ڈائرکٹری دسیوں ہزار چھوٹی فائلوں پر مشتمل ہوتی ہے، اور کوئی سائٹ ڈسک کی گنجائش کی حد سے بہت نیچے رہتے ہوئے بھی اپنے inode کا کوٹہ ختم کر سکتی ہے۔ دونوں کی جانچ اس بات سے کی جاتی ہے کہ سلاٹ میں حقیقت میں کتنا باقی ہے، نہ کہ پلان کے حساب سے۔

”چیک نہیں کیا جا سکا“ اپنے آپ میں ایک جواب ہے

ایسی جانچ جو اپنے موضوع کو نہ دیکھ سکے، وہ غیر جانچ شدہ رپورٹ کرتی ہے، کبھی کامیاب نہیں۔ ایک بے داغ عمل بتاتا ہے کہ وہ کتنی چیزوں کی تصدیق نہیں کر سکا، کیونکہ جھوٹا اطمینان بخش نتیجہ ہی وہ ہوتا ہے جسے کوئی دوبارہ نہیں دیکھتا۔

انتباہ دیتا ہے، کبھی بلاک نہیں کرتا

ہر تلاش کو --force کے ذریعے نظر انداز کیا جا سکتا ہے، اور خلاصہ بھی یہی کہتا ہے۔ اس کے بجائے CI میں ایگزٹ کوڈ ہی گیٹ ہے، تاکہ پائپ لائن سخت رہ سکے جبکہ اختیار ایک شخص کے ہاتھ میں رہے۔

دو مقامی رن ٹائمز، دونوں حقیقی

WordPress Playground ڈیفالٹ ہے: PHP کو WebAssembly میں کمپائل کیا گیا ہے، جو Node کے اندر چلتا ہے، لہذا ایک ایسا لیپ ٹاپ جس پر صرف Node انسٹال ہو، اس جملے کو پڑھنے میں لگنے والے وقت میں کچھ نہ ہونے سے لے کر ایک فعال WordPress تک پہنچ جاتا ہے۔

جب آپ کو ایک مقامی PHP کی ضرورت ہو — imagick جیسی ایک توسیع، ایک حقیقی MySQL — تو --runtime docker پاس کریں اور اس کے بجائے php-fpm اور MariaDB کنٹینرز حاصل کریں۔ دونوں ایک ہی پروجیکٹ سے ایک جیسی فائلیں پیش کرتے ہیں، اس لیے ان کے درمیان تبدیل کرنے سے صرف انجن تبدیل ہوتا ہے اور کچھ نہیں۔

باقی سب کچھ جو آپ پہلے سے ہی پینل میں کرتے ہیں

Zinnector® اسی عوامی API پر بنایا گیا ہے جس پر ڈیش بورڈ ہے، لہذا جو کچھ پینل کر سکتا ہے، یہ بھی کر سکتا ہے — اور ہر کمانڈ ایک نجی اینڈ پوائنٹ کے بجائے OpenAPI تفصیلات میں ایک دستاویزی آپریشن ہے۔

سائٹس اور ڈیپلوائے

سائٹس کی فہرست دیکھیں، کسی ایک کے بارے میں پلیٹ فارم کو معلوم تمام تفصیلات پڑھیں، دوبارہ تعینات کریں، اور تعیناتی کی تاریخ اور بلڈ لاگز پڑھیں۔

ڈومینز، DNS اور میل

ڈومینز کی فہرست بنائیں، ڈی این ایس ریکارڈز کو لکھنے سے پہلے دکھائے جانے والے ریکارڈ کے ساتھ پڑھیں اور تبدیل کریں، اور اپنی میل سروسز کو پڑھیں۔

PHP، کوٹہ، ڈیٹا بیس اور لاگز

PHP کے ورژنز تبدیل کریں، اپنے پلان کی فراہم کردہ حدود کے مطابق ڈسک اور inode کے استعمال کا جائزہ لیں، phpMyAdmin تک رسائی کے لیے ایک بار قابلِ استعمال لنکس حاصل کریں، اور رسائی اور خرابیوں کے لاگز کی لائیو نگرانی کریں۔

WP-CLI اور بلک آپریشنز

کسی سائٹ پر اجازت یافتہ فہرست میں شامل WP-CLI کمانڈز چلائیں، اور ہر سائٹ کے لیے الگ الگ کرنے کے بجائے ایک ہی کال میں پورے انتخاب پر کیشز صاف کریں یا میلویئر اسکینز شروع کریں۔

ہر کمانڈ، بالکل اسی طرح جس طرح --help اسے درج کرتا ہے

مکمل فہرست، ہر ایک کے لیے ایک سطر۔ مکمل حوالہ — ہر فلیگ، چلانے کے قابل مثال اور ہر کمانڈ کیا پرنٹ کرتی ہے — خود CLI سے تیار کیا جاتا ہے اور ڈویلپر کی دستاویزات اور معلوماتی مرکز میں موجود ہوتا ہے، لہذا یہ آپ کے انسٹال کردہ ٹول سے مختلف نہیں ہو سکتا۔

نیا zinnector

ایک ایسا WordPress پروجیکٹ کا ڈھانچہ تیار کریں جسے آپ فوری طور پر چلا سکیں۔

zinnector dev

اس پروجیکٹ کو مقامی طور پر چلائیں — کسی Docker کی ضرورت نہیں ہے۔

zinnector لاگ ان

Zinn Digital® API کلید کے ساتھ سائن ان کریں۔

زنیکٹر لاگ آؤٹ

محفوظ کردہ API کلید کو بھول جائیں۔

zinnector whoami

دکھائیں کہ یہ CLI کس کے طور پر تصدیق شدہ ہے۔

zinnector سائٹس

ان سائٹس کی فہرست بنائیں جنہیں یہ کلید دیکھ سکتی ہے۔

زنیکٹر کی حیثیت

ایک سائٹ کے بارے میں پلیٹ فارم جو کچھ بھی جانتا ہے۔

زنیکٹر شیئر

ایک شخص کو ایک ہی سائٹ تک رسائی دیں — ڈویلپر، ڈیزائنر، کلائنٹ — ایک کردار اور ایک وجہ کے ساتھ۔

زی نیکٹر کے تعاون کنندگان

دیکھیں کہ کس کو سائٹ تک رسائی دی گئی ہے، ان کا کردار کیا ہے، اور آیا انہوں نے ابھی تک قبول کیا ہے یا نہیں۔

زینیکٹر اشتراک ختم کریں

ای میل یا گرانٹ آئی ڈی کے ذریعے کسی شخص کی رسائی واپس لیں۔

zinnector دعوت نامے

وہ دعوت نامے جو آپ کے منتظر ہیں، اور ایک کو قبول کریں۔

زنیکٹر لنک

اس پروجیکٹ کو ہوسٹنگ سلاٹ کی طرف اشارہ کریں (اور اس کے ذخیرے کو مربوط کریں)۔

zinnector pull

مقامی ڈیولپمنٹ کے لیے کسی ہوسٹ شدہ سائٹ کی فائلیں اس پروجیکٹ میں شامل کریں، اور دوبارہ مطابقت پذیری کے لیے دوبارہ چلائیں۔ جب سائٹ اپنے ذخیرے (ریپوزٹری) کے ساتھ مطابقت پذیر ہوتی ہے تو یہ تیز رفتار راستہ اختیار کرتی ہے، بصورت دیگر تازہ ترین بیک اپ سے کام کرتی ہے۔

zinnector مطابقت پذیری

ہوسٹ کردہ سائٹ کی لائیو فائلوں اور اس کے ریپوزٹری کے درمیان دو طرفہ ہم آہنگی: اس کی موجودہ صورتحال دیکھیں، اسے فعال کریں، سائٹ کی تبدیلیوں کو کمٹ کریں، یا منتخب کریں کہ کون سا رخ غالب رہے گا۔

زنیکٹر ایم سی پی

Claude Desktop اور دیگر AI کلائنٹس جو صرف مقامی سرورز شروع کرتے ہیں، کے لیے Zinn Digital® MCP سرور کا ایک پل۔

زن نیکٹر کلون

ایک ہی مرحلے میں کسی ہوسٹ شدہ سائٹ سے مقامی پروجیکٹ بنائیں: اس کے ریپوزیٹری کو کلون کریں یا اس کی فائلیں حاصل کریں، پروجیکٹ فائل لکھیں، اور آپ کو zinnector dev چلانے کے لیے تیار چھوڑ دیں۔

زنیکٹر چیک

اس پروجیکٹ کا اس سلاٹ سے موازنہ کریں جس میں آپ تعینات کرنے والے ہیں۔

zinnector push

ابتدائی جانچ کریں، اپنے کمٹس پش کریں، اور ڈیپلائے کریں۔

zinnector ڈیپلائے

پش کیے بغیر، جو پلیٹ فارم کے پاس پہلے سے موجود ہے اسے دوبارہ تعینات کریں۔

zinnector تعینات کرتا ہے

سائٹ کی تعیناتی کی تاریخ۔

zinnector php

کسی سائٹ کا PHP ورژن دکھائیں یا تبدیل کریں۔

زننیکٹر کوٹا

منصوبے کی فراہم کردہ حد کے مقابلے میں ڈسک، فائلوں اور ڈیٹا بیس کا استعمال۔

zinnector db

ڈیٹا بیس کا سائز، اور phpMyAdmin اور فائل مینیجر کے یک بار استعمال ہونے والے لنکس۔

زینیکٹر لاگز

کسی سائٹ کے رسائی اور خامی کے لاگز کو ریئل ٹائم میں ٹریک کریں۔

zinnector wp

کسی سائٹ پر اجازت یافتہ WP-CLI کمانڈ چلائیں۔

zinnector بیک اپ

سائٹ کے بیک اپس کی فہرست بنائیں اور لیں۔ ذیلی احکامات: list، now۔

zinnector ڈومینز

ان ڈومینز کی فہرست بنائیں جنہیں یہ کلید دیکھ سکتی ہے۔

zinnector dns

DNS ریکارڈز پڑھیں اور تبدیل کریں۔ ذیلی احکامات: list، add، rm۔

zinnector میل

میل سروسز کی فہرست بنائیں۔

zinnector بلک

متعدد سائٹس پر ایک آپریشن چلائیں (cache_purge، malware_scan، sitemap، block_ip)۔

zinnector ai

اس پروجیکٹ کو سیاق و سباق کے طور پر رکھتے ہوئے، Zinn Digital® معاون سے پوچھیں۔

سوالات

کیا اسے استعمال کرنے کے لیے میرا Zinn Digital® کا صارف ہونا ضروری ہے؟

نہیں۔ `zinnector new` اور `zinnector dev` کے لیے کسی اکاؤنٹ کی بالکل ضرورت نہیں ہے — ایک پلگ ان، تھیم یا پوری سائٹ کا ڈھانچہ بنائیں اور اسے مقامی طور پر، مفت، ہمیشہ کے لیے چلائیں۔ API کلید کی ضرورت صرف ان کمانڈز کے لیے ہے جو آپ کی ہوسٹنگ کے ساتھ رابطہ کرتی ہیں۔

کیا اسے Docker کی ضرورت ہے؟

ڈیفالٹ رن ٹائم کے لیے نہیں۔ WordPress Playground پی ایچ پی کو WebAssembly میں کمپائل کرتا ہے اور Node کے اندر چلتا ہے، لہٰذا `zinnector dev` کسی بھی دوسری چیز کو انسٹال کیے بغیر سیکنڈوں میں ایک حقیقی WordPress شروع کر دیتا ہے۔ اگر آپ کو مقامی PHP کی ضرورت ہے — کسی ایکسٹینشن جیسے imagick یا ionCube کی جانچ کرنے کے لیے — تو `--runtime docker` اس کے بجائے آپ کو php-fpm اور MariaDB کنٹینرز فراہم کرتا ہے۔ دونوں معاونت یافتہ ہیں؛ کوئی بھی ثانوی حل نہیں ہے۔

پری فلائٹ چیک دراصل کس چیز کا موازنہ کرتا ہے؟

آپ کا مقامی PHP ورژن بمقابلہ سلاٹ کا ورژن، آیا سلاٹ اس ورژن پر سوئچ بھی کر سکتا ہے جس پر آپ نے کام کیا تھا، آیا سلاٹ کا PHP اختتامِ مدت کو پہنچ چکا ہے اور آیا مشین نے واقعی اسے لاگو کر دیا ہے، آپ کے پروجیکٹ کا سائز اور فائلوں کی تعداد بمقابلہ باقی ماندہ ڈسک اور inode گنجائش، دونوں طرف WordPress کے ورژنز، آیا سلاٹ کی فراہمی مکمل ہو چکی ہے، اور آیا تعیناتی کے لیے git ریپوزٹری منسلک ہے۔ کوئی بھی چیز جس کی یہ جانچ نہیں کر سکا، اسے کامیاب شمار کرنے کے بجائے غیر جانچ شدہ کے طور پر رپورٹ کیا جاتا ہے۔

کیا یہ مجھے تعینات کرنے سے روک سکتا ہے؟

نہیں، اور یہ جان بوجھ کر کیا گیا ہے۔ Pre-flight خبردار کرتا ہے اور آپ کو آگے بڑھنے دیتا ہے — `--force` کسی بھی نتیجے سے قطع نظر تعینات کرتا ہے۔ آپ اپنی سائٹ کے بارے میں وہ باتیں جانتے ہیں جو چیک کرنے والا نہیں جانتا، اور وہ ٹول جو تعینات کرنے سے انکار کرتا ہے وہ ٹول لوگ ان انسٹال کر دیتے ہیں۔

کیا میری API کلید محفوظ ہے؟

کلید کو کبھی بھی کمانڈ لائن سے نہیں پڑھا جاتا ہے — صرف پرامپٹ یا پائپ کردہ stdin سے — تاکہ یہ آپ کی شیل ہسٹری یا پروسیس کی فہرست میں شامل نہ ہو سکے۔ اسے آپ کی اپنی کنفیگ ڈائرکٹری میں فائل موڈ 600 کے ساتھ محفوظ کیا جاتا ہے، اور Zinnector® ہر بار لکھتے وقت ان اجازتوں کی دوبارہ توثیق کرتا ہے۔

کیا میں اسے CI میں استعمال کر سکتا ہوں؟

جی ہاں۔ `ZINNECTOR_TOKEN` سیٹ کریں، اور ہر کمانڈ `--json` قبول کرتی ہے۔ انسانی آؤٹ پٹ stderr میں جاتا ہے اور ڈیٹا stdout میں، لہذا پائپ صاف رہتے ہیں۔ `zinnector check` کچھ ملنے پر غیر صفر کوڈ کے ساتھ باہر نکلتا ہے، اس لیے یہ پائپ لائن گیٹ کے طور پر کام کرتا ہے، اور موازنہ ممکن نہ ہونے پر `--strict` بھی ناکام ہو جاتا ہے۔

اسے انسٹال کریں اور اگلے منٹ میں ایک سائٹ چلائیں

npm install -g zinnector چلائیں، یا npx zinnector new my-site کے ساتھ ایک بار آزمائیں۔ مفت، MIT لائسنس یافتہ اور عوامی API پر تیار کردہ۔ ایک پروجیکٹ کا بنیادی ڈھانچہ تیار کریں، اسے Docker کے بغیر مقامی طور پر چلائیں، اور تعینات کرنے سے پہلے ابتدائی جانچ کریں۔

دستاویزات پڑھیں