Zinnector®، Zinn Digital® کا WordPress ڈویلپرز کے لیے مفت، MIT کے تحت لائسنس یافتہ کمانڈ لائن ٹول ہے۔ یہ ایک سائٹ کا ڈھانچہ تیار کرتا ہے، آپ کی اپنی مشین پر Node کے سوا کچھ بھی انسٹال کیے بغیر ایک حقیقی WordPress چلاتا ہے — نہ کوئی Docker، نہ کوئی MAMP، اور نہ ہی آپ کے PATH پر PHP — پھر جو کچھ آپ نے بنایا ہے اسے اس ہوسٹنگ سلاٹ کے خلاف جانچتا ہے جس پر آپ تعینات کرنے والے ہیں اور اسے پش کر دیتا ہے۔ یہ گائیڈ آپ کو تقریباً دو منٹ میں کچھ نہ ہونے کی حالت سے ایک فعال سائٹ تک لے جاتی ہے، اور آپ کو بتاتی ہے کہ ہر قدم پر کامیابی کیسی نظر آتی ہے تاکہ کچھ غلط ہونے پر آپ کو معلوم ہو سکے۔
آپ کو کن چیزوں کی ضرورت ہے
- Node 24 یا اس سے نیا۔
node --version چلائیں؛ اسے v24 یا اس سے زیادہ پرنٹ کرنا چاہیے۔ nodejs.org سے موجودہ LTS انسٹال کریں — Windows پر winget install OpenJS.NodeJS.LTS، اور macOS پر brew install node@24۔
- npm، جو Node کے ساتھ آتا ہے۔ Zinnector® اسے ایک بار WordPress رن ٹائم کو اپنی کیشے میں ڈاؤن لوڈ کرنے کے لیے استعمال کرتا ہے۔
- git، صرف
zinnector push کے لیے — تعیناتیاں آپ کی ریپوزٹری سے انجام پاتی ہیں۔
- Docker، صرف اس صورت میں جب آپ
--runtime docker کے ساتھ اس کا تقاضا کریں۔ پہلے سے طے شدہ (default) رن ٹائم کو اس کی بالکل ضرورت نہیں ہوتی۔
ذیل میں سے کسی بھی چیز کے لیے اکاؤنٹ درکار نہیں ہے۔ API کی کی ضرورت صرف تب ہوتی ہے جب آپ کسی ہوسٹنگ سلاٹ تک پہنچتے ہیں، Zinnector® کے ساتھ تعیناتی میں۔
مرحلہ 1 — اسے انسٹال کریں
npm install -g zinnector
اگر npm کی جانب سے npm WARN EBADENGINE پرنٹ ہوتا ہے، تو آپ کا Node اس >=24.18.1 سے پرانا ہے جس کا پیکیج تقاضا کرتا ہے۔ انسٹالیشن پھر بھی مکمل ہو جاتی ہے، لیکن CLI چلنے سے انکار کر دے گی۔ پہلے Node کو اپ گریڈ کریں، پھر دوبارہ انسٹال کریں۔
مرحلہ 2 — ورژن چیک کریں
zinnector --version
کامیابی: ایک ورژن نمبر، مثال کے طور پر 0.1.2۔ اگر آپ کو "Zinnector® needs Node 24 or newer — this is Node 20.x" نظر آئے تو بائنری انسٹال ہو چکی ہے لیکن آپ کا Node بہت پرانا ہے؛ کمانڈ کچھ کرنے کے بجائے کوڈ 78 کے ساتھ بند ہو جاتی ہے۔
مرحلہ 3 — مدد (help) پڑھیں
zinnector --help
کامیابی: ایک بینر جس میں اس فلو کی پانچ کمانڈز (new، dev، link، check، push) کے نام درج ہوں گے اور پھر ہر کمانڈ کے ساتھ ایک سطر کا مقصد لکھا ہوگا۔ ہر کمانڈ کا اپنا --help بھی ہوتا ہے — zinnector dev --help رن ٹائم، PHP اور پورٹ فلیگز کی فہرست دکھاتا ہے۔ مثالوں کے ساتھ مکمل فہرست کمانڈ کا حوالہ میں موجود ہے۔
مرحلہ 4 — سائٹ کا ڈھانچہ تیار کریں
zinnector new my-site
کامیابی: ایک Created my-site کی سرخی اور ان فائلوں کی فہرست جو اس نے لکھی ہیں — zinnector.json، ایک wp-content ٹری مع plugins/، themes/ اور ایک mu-plugins/ ہیلپر، ایک .gitignore اور ایک README — جس کے بعد چلانے کے لیے اگلی کمانڈز درج ہوں گی۔ اس میں کچھ بھی پلیس ہولڈر نہیں ہے؛ پروجیکٹ اپنی موجودہ حالت میں ہی بوٹ ہو جاتا ہے۔ --template plugin یا --template theme ایک پلگ ان یا بلاک تھیم کا ڈھانچہ تیار کرتے ہیں جو بنتے ہی فعال ہو جاتا ہے۔
مرحلہ 5 — اسے چلائیں
cd my-site
zinnector dev
پہلی بار، Zinnector® WordPress رن ٹائم ڈاؤن لوڈ کرنے سے پہلے ایک بار پوچھتا ہے — تقریباً 570 MB، کیونکہ اس میں 5.2 سے 8.5 تک کی ہر PHP کی پیشگی ساخت شامل ہے — اسے وہ اپنی کیشے ڈائریکٹری میں ڈاؤن لوڈ کرتا ہے، کبھی بھی آپ کے پروجیکٹ میں نہیں۔ Y جواب دیں، یا سوال کو نظر انداز کرنے کے لیے --yes شامل کریں۔ Node 26 یا اس سے نئے ورژن پر یہ رن ٹائم کے لیے الگ سے ایک Node 24 بھی لاتا ہے (تقریباً 30 MB، جس کی nodejs.org کے چیک سمز سے تصدیق کی جاتی ہے)، کیونکہ رن ٹائم کے نیٹِو ماڈیول کے پاس صرف Node 24 اور 25 کے لیے پہلے سے بنی ہوئی بائنریز موجود ہیں؛ آپ کو کمپائلر یا Visual Studio کی ضرورت نہیں ہے۔
کامیابی: ایک بلاک جو پروجیکٹ، PHP ورژن اور WordPress ورژن کا نام بتاتا ہے، پھر:
✔ running at http://127.0.0.1:9400
admin: http://127.0.0.1:9400/wp-admin (already signed in)
مرحلہ 6 — اسے کھولیں
کسی براؤزر میں http://127.0.0.1:9400 پر جائیں۔ کامیابی: ایک نئی WordPress سائٹ جس کا عنوان My WordPress Website ہو، جو آپ کے طلب کردہ PHP ورژن سے چل رہی ہو۔ http://127.0.0.1:9400/wp-admin پہلے سے سائن ان شدہ ڈیش بورڈ کھولتا ہے۔ wp-content/plugins/ میں کوئی پلگ ان یا wp-content/themes/ میں کوئی تھیم شامل کریں اور وہ اگلی بار ری لوڈ کرنے پر وہاں موجود ہوگی — رن ٹائم ان ڈائریکٹریز کو سیدھا آپ کے پروجیکٹ سے سرو کرتا ہے۔
روکنے کے لیے Ctrl-C دبائیں۔ zinnector dev --once رن ٹائم کو بوٹ کرتا ہے، حقیقت میں کیا چل رہا ہے اسے پرنٹ کرتا ہے (PHP ورژن، WordPress ورژن، لوڈ کردہ ایکسٹینشنز) اور رک جاتا ہے — یہ اس وقت مفید ہوتا ہے جب آپ محض وعدے کے بجائے ثبوت چاہتے ہوں۔
آگے کہاں جانا ہے
یہی دستاویزات پیکیج کے README میں npm اور GitHub پر موجود ہیں، جہاں مسائل کی نشاندہی (issues) اور پُل کی درخواستیں (pull requests) خوش آئند ہیں۔