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

## پروجیکٹ کی پوزیشننگ میمبرن (Mengya) زچگی اور بچوں کی صحت و پرورش کے مواد کے پلیٹ فارم کا مقامی روایتی براہ راست تعیناتی انجینئرنگ پروجیکٹ، جو ڈویلپرز کی مقامی ڈیبگنگ، سورس کوڈ ہاٹ ری لوڈ ڈیولپمنٹ اور Docker کے بغیر ہلکے میزبانوں پر تعیناتی کے لیے ہے۔ ریپوزٹری میں Docker ورژن کا بھائی پروجیکٹ بھی دستیاب ہے۔ ## آرکیٹیکچر کی خصوصیات - **یک جسمانی یکجا میزبانی**: فرنٹ اینڈ کی پروڈکشن بلڈ مصنوعات Django کے templates اور static ڈائریکٹریز میں ضم کی جاتی ہیں، ایک واحد Python پروسیس SPA صفحات، اسٹیٹک وسائل اور بیک اینڈ API کی یکجا میزبانی کرتا ہے، رن ٹائم ماحول میں Node.js کے مستقل سروس کی ضرورت نہیں۔ - **ڈیٹا اسٹوریج**: مقامی SQLite3 (backend/db.sqlite3)، خودکار مائیگریشن کی سہولت۔ - **ٹیکنالوجی اسٹیک**: Python 3.10+، Django + DRF، React + Vite (صرف فرنٹ اینڈ کی دوبارہ ڈیولپمنٹ کے لیے Node.js 18+ درکار)۔ - **سیکیورٹی آئسولیشن**: فرنٹ اینڈ اور بیک اینڈ لوپ بیک ایڈریس پر بائنڈ، بیرونی رسائی Nginx ریورس پراکسی کے ذریعے؛ SNI کے ذریعے پورٹ 443 پر میزبان کے دیگر HTTPS سائٹس کے ساتھ ہم آہنگی کی سہولت، SAN ایکسٹینشن کے ساتھ خودکار خود دستخط شدہ سرٹیفکیٹ کی تخلیق، اور بلٹ ان 80 سے 443 ری ڈائریکٹ۔ ## آپریشن اسکرپٹ run.sh start / restart / stop / status / add_nginx / init_data / help وغیرہ کمانڈز فراہم کرتا ہے، کمانڈ لائن پیرامیٹرز کے ذریعے حسب ضرورت پورٹ، ایڈمنسٹریٹر اکاؤنٹ کا پاس ورڈ اور نک نیم، SNI ڈومین کی تخصیص کی سہولت، اور خودکار طور پر .env میں لکھتا ہے۔ شروع کرنے سے پہلے خودکار طور پر کیشے اور .git کے غیر ضروری آبجیکٹس کی صفائی، .env کی عدم موجودگی میں ٹیمپلیٹ سے خود شفا بخش ابتدا۔ ## فیچر ماڈیولز - **ایڈمنسٹریٹر اکاؤنٹ مینجمنٹ**: شروع کرتے وقت ensure_admin چلاتا ہے، واحد ایڈمنسٹریٹر لائف سائیکل کی ضمانت، تاریخی ایڈمنسٹریٹر اکاؤنٹس کی خودکار صفائی، عام رجسٹرڈ صارفین کا ڈیٹا محفوظ رکھتا ہے۔ - **لاگ ان سیکیورٹی خطرہ کنٹرول**: پاس ورڈ اور سیکیورٹی سوال کی غلطی کا شمار، لاک کاؤنٹ ڈاؤن، گرافیکل کیپچا، پاس ورڈ بازیافت کی کوششوں کی حد؛ ایڈمنسٹریٹر اکاؤنٹ منجمد نہیں ہوتا، صرف انتظار اور کیپچا متحرک ہوتا ہے۔ - **اجازت کنٹرول میٹرکس**: 6 بڑے ماڈیولز میں کل 31 باریک بین اجازتیں (صفحہ مینو اور CRUD آپریشنز)، عالمی ڈیفالٹ اور انفرادی صارف کی تخصیص کی سہولت، والدین و فرزند اجازتوں کی تکراری ہم آہنگی، ایڈمنسٹریٹر کے پاس غیر قابلِ غیر فعال اعلیٰ ترین اجازت۔ - **مواد اور کاروبار**: حمل کے ہفتہ وار کیلنڈر، جنین کی تعلیمی کہانیاں، حمل کی ترکیبیں، بچوں کا انسائیکلوپیڈیا، ڈیلیوری کی فہرست، مصنوعات کی لائبریری اور برانڈز، مصنوعات کی بُک مارکنگ، خریداری کے چینل لنکس۔ - **AI اسسٹنٹ**: ذاتی یا ایڈمنسٹریٹر سے وراثت میں ملنے والی API Key کی ترتیب اور کنیکٹیویٹی ٹیسٹ کی سہولت، ملٹی انجن نیٹ ورک سرچ کی ناکامی پر منتقلی (DuckDuckGo، Google، Bing، 360، Sogou، Baidu، Yahoo)، ٹائم آؤٹ پر مقامی نالج بیس پر ڈی گریڈ، جوابات میں معلومات کے ماخذ کی نشاندہی۔ - **بچے کا پروفائل**: غیر پیدائشی (متوقع تاریخ پیدائش، جنین کا نام) اور پیدائشی (سالگرہ، وزن) دو طریقوں کی سہولت، حمل کے مرحلے کے ساتھ دو طرفہ ہم آہنگی، بڑی عمر کے بچوں کی عمر مہینوں میں "X سال X ماہ" کے طور پر ظاہر۔ - **آڈٹ لاگ**: تصدیق، صارف کنٹرول، مرحلے کی تبدیلی، مصنوعات، بُک مارکنگ، صحت، ڈیلیوری کی فہرست، AI سوال و جواب وغیرہ کے اعمال کا احاطہ، فلٹرنگ اور CSV ایکسپورٹ کی سہولت۔ ## ڈائریکٹری اسٹرکچر backend (Django پروجیکٹ، apps، config، db.sqlite3، requirements.txt)، frontend (Vite + React سورس کوڈ)، logs (لاگز اور PID)، .env، run.sh۔ ## قابل اطلاق منظرنامے ان تعینات کرنے والوں کے لیے موزوں جو سنگل مشین یا ہلکے سرور پر کم سے کم انحصار کے ساتھ زچگی و بچوں کے مواد کا پلیٹ فارم چلانا چاہتے ہیں اور باریک بین اجازت اور سیکیورٹی خطرہ کنٹرول کی صلاحیت درکار ہے۔