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

یہ ریپوزٹری Tuleva کے ویب پر مبنی پنشن آن بورڈنگ کلائنٹ کا فرنٹ اینڈ ہے، جو pension.tuleva.ee پر دستیاب ہے۔ یہ React اور JavaScript/TypeScript کے ساتھ بنایا گیا ہے، اور وقت کے ساتھ ساتھ جدید طریقوں کو اپنانے کے لیے تیار ہوا ہے۔ اہم تکنیکی تفصیلات: - یہ اصل میں JavaScript، Redux، اور Enzyme کے ساتھ جانچ کے لیے بنایا گیا تھا، لیکن اب یہ پروجیکٹ TypeScript تبدیلی، فنکشنل اجزاء، اور ڈیٹا لانے کے لیے React Query کے استعمال کی حوصلہ افزائی کرتا ہے، جبکہ مقامی حالت کی اشتراک کے لیے React کے مقامی context کا استعمال کرتا ہے۔ - کوڈ بیس میں Redux سے دور جانے کے لیے ایک منتقلی گائیڈ شامل ہے، جو React Query hooks کو ترجیح دیتا ہے اور پرانے Redux استعمال کو الگ hooks میں خلاصہ کرتا ہے۔ - ترقی کے لیے Node.js LTS (22.17.0) اور NPM (10.9.2) کی ضرورت ہے، اور ورژن مینجمنٹ کے لیے asdf تجویز کیا جاتا ہے۔ - مقامی طور پر چلانے کے لیے، `npm install` کے ساتھ انحصار انسٹال کریں، `npm run develop` (یا پروڈکشن کے لیے `npm run develop-production`) کے ساتھ سرور شروع کریں، اور `npm test` کے ساتھ ٹیسٹ چلائیں۔ غیر پروڈکشن رنز کے لیے onboarding-service پورٹ 9000 پر متوقع ہے۔ - تعیناتی CircleCI کے ذریعے master پر push کرنے پر AWS پر خودکار ہے، جبکہ ان لائن ویجٹ کو FTP اور WordPress تھیم URL اپڈیٹس کے ذریعے دستی طور پر اپڈیٹ کیا جاتا ہے۔ - Node.js ورژن اپڈیٹس package.json engines، CircleCI config، اور .tool-versions میں ترمیم کرکے منظم کیے جاتے ہیں۔ جانچ React Testing Library اور MSW کا استعمال کرتی ہے، جس کی مثال CancellationFlow.tsx میں دی گئی ہے جو موجودہ Redux کوڈ کو دوبارہ استعمال کرتے ہوئے بتدریج منتقلی دکھاتی ہے۔ ٹائم زون پر منحصر ٹیسٹوں کے لیے IntelliJ رن کنفیگریشنز میں TZ=UTC کی ضرورت ہوتی ہے۔