منصوبے کے بارے میں

چین لنک ایک اوپن سورس پروجیکٹ ہے جو بلاک چین کی حفاظت اور قابل اعتمادی کی ضمانتوں کو برقرار رکھتے ہوئے حقیقی دنیا کے ڈیٹا اور آف چین کمپیوٹیشن تک رسائی فراہم کر کے سمارٹ کنٹریکٹ کی صلاحیتوں کو بڑھاتا ہے۔ اس ریپوزٹری میں چین لنک کور نوڈ اور کنٹریکٹس شامل ہیں۔ کور نوڈ وہ بنڈل بائنری ہے جو غیر مرکزی اوریکل نیٹ ورک میں شریک نوڈ آپریٹرز چلاتے ہیں۔ README میں بیان کردہ اہم صلاحیتیں: - کور نوڈ بائنری جس میں ویب UI (ڈیفالٹ پورٹ 6688) اور انتظامیہ، لاگ ان اور جاب مینجمنٹ کے لیے ریموٹ CLI کلائنٹ شامل ہے۔ - CLI کمانڈز جیسے `chainlink jobs list` کے ذریعے جاب مینجمنٹ، جاب بنانے کی دستاویزات کے ساتھ۔ - ماحولیاتی متغیرات اور API، UI یا CLI کے ذریعے براہ راست ترتیبات کے امتزاج سے کنفیگریشن۔ - بیرونی اڈاپٹرز جو سسٹم کو قابل توسیع بناتے ہیں، ایک سادہ REST API کے ذریعے حسب ضرورت کمپیوٹیشن اور خصوصی APIs کے انضمام کی اجازت دیتے ہیں۔ - `plugins/` ڈائریکٹری میں YAML فائلوں میں بیان کردہ پلگ ان سپورٹ، جو loopinstall کے ساتھ انسٹال ہوتے ہیں؛ کچھ پلگ ان نجی ریپوزٹریز کا حوالہ دیتے ہیں۔ - بڑے ریلیز ورژنز کے لیے پہلے سے تیار ڈوکر امیجز، نیز برانچز یا PRs سے صرف ٹیسٹنگ کے لیے امیجز بنانے کے ورک فلو۔ - OIDC کی لیس سائننگ کے ساتھ cosign استعمال کرتے ہوئے ریلیز کی تصدیق۔ بلڈ اور ڈیولپمنٹ نوٹس: - Go، NodeJS اور pnpm، اور PostgreSQL (>= 15.x) درکار ہے؛ سرکاری ڈوکر امیج بنڈل کلائنٹ کی وجہ سے Postgres 18.x تک سپورٹ کرتی ہے۔ - `make install` کے ساتھ بلڈ کریں، پھر `chainlink help` یا `chainlink node start` چلائیں۔ - نوڈ چلانے کے لیے کھلے ویب ساکٹ کنکشن کے ساتھ Ethereum execution کلائنٹ تک رسائی درکار ہے۔ سرکاری طور پر سپورٹڈ کلائنٹس میں Parity/Openethereum (متروک)، Geth اور Besu شامل ہیں؛ Nethermind اور Erigon کو سپورٹڈ بتایا گیا ہے لیکن معلوم مسائل کی وجہ سے خراب ہیں۔ - ٹیسٹنگ کے لیے `make test` عارضی ٹیسٹ ڈیٹا بیس کے ساتھ استعمال کیا جا سکتا ہے، یا دستی طریقہ کار جس میں ٹیسٹ ڈیٹا بیس سیٹ اپ، مائیگریشنز اور `go test ./...` شامل ہیں۔ ریس ڈیٹیکشن اور فز ٹیسٹنگ سپورٹڈ ہیں۔ - ریپوزٹری میں تین Go ماڈیولز (root، integration-tests، core/scripts) متعلقہ replaces کے ساتھ شامل ہیں، اور `make gomodtidy` تینوں کو ٹائیڈی کرتا ہے۔ - کوڈ جنریشن mocks کے لیے mockery استعمال کرتی ہے؛ دوبارہ پیدا ہونے والے ڈیولپمنٹ ماحول کے لیے Nix شیل/فلیک فراہم کیا گیا ہے۔ - ورژننگ کے لیے Changesets استعمال ہوتے ہیں، اور پروجیکٹ Semantic Versioning اور Keep a Changelog روایات کی پیروی کرتا ہے۔ کمیونٹی اور شراکت: Discord بنیادی مواصلاتی چینل ہے؛ شراکت کی ہدایات اور ایشو ٹریکر کا حوالہ دیا گیا ہے، اور سرکاری دستاویزات docs.chain.link پر دستیاب ہیں۔