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

# پروجیکٹ کا جائزہ یہ vue2 + vuex میں لکھی گئی ایک بڑی سنگل پیج ایپلی کیشن کی مثال ہے، جسے 'Ele.me' فوڈ ڈیلیوری کے منظر نامے پر بنایا گیا ہے۔ README کے مطابق، مصنف نے اسے فارغ وقت میں صفر سے مکمل کرنے میں تقریباً دو ماہ لگائے۔ اس پروجیکٹ کا مقصد سادہ ڈیمو کے بجائے مکمل فنکشنلٹی اور پیچیدہ لاجک کی عملی مشق کرنا ہے۔ مصنف نے واضح کیا ہے کہ اس کا Mooc.com کے Ele.me کورس پروجیکٹ سے کوئی تعلق نہیں ہے اور یہ محض ذاتی مشق ہے؛ اصل آرڈرز کے لیے آفیشل کلائنٹ استعمال کیا جانا چاہیے۔ # ٹیکنالوجی اسٹیک vue2 + vuex + vue-router + webpack + ES6/7 + fetch + sass + flex + svg۔ README میں بتایا گیا ہے کہ ES6/7 کی خصوصیات کی وجہ سے node کا ورژن 6.0 یا اس سے زیادہ ہونا ضروری ہے۔ # پروجیکٹ چلانے کا طریقہ ``` git clone https://github.com/bailicangdu/vue2-elm.git cd vue2-elm npm install یا yarn(تجویز کردہ) npm run dev ``` # انٹرفیس ڈیٹا اور متعلقہ پروجیکٹس تمام API ڈیٹا متعلقہ بیک اینڈ سسٹم node-elm سے آتا ہے۔ اگر آپ فرنٹ اینڈ اور بیک اینڈ دونوں کی ترقی کا تجربہ کرنا چاہتے ہیں، تو بیک اینڈ سسٹم ڈاؤن لوڈ کریں، جس کی صورت میں اسٹارٹ کمانڈ `npm run dev` کے بجائے `npm run local` ہوگی۔ اس کے علاوہ element-ui پر مبنی ایک ایڈمن مینجمنٹ پیج vue2-manage بھی فراہم کیا گیا ہے، جسے صرف فرنٹ اینڈ ڈویلپمنٹ کے دوران نظر انداز کیا جا سکتا ہے۔ README میں یہ بھی ذکر ہے کہ پری ویو ایڈریس اور انٹرفیس کے لیے https کا استعمال ضروری ہے۔ # دستیاب خصوصیات - لوکیشن کی سہولت - شہر کا انتخاب - ایڈریس سرچ - منتخب کردہ ایڈریس کے قریب اسٹورز کی فہرست - کھانے اور ریسٹورنٹ کی تلاش - فاصلے، فروخت، ریٹنگ، خاص پکوان اور ڈیلیوری کے طریقے کے مطابق فلٹر اور ترتیب - ریسٹورنٹ کے کھانے کی فہرست کا صفحہ - شاپنگ کارٹ کی خصوصیت - اسٹور ریویو پیج - کھانے کی تفصیلات کا صفحہ - مرچنٹ ڈیٹیلز پیج - لاگ ان اور رجسٹریشن - پاس ورڈ تبدیل کرنا - پرسنل سینٹر - ایس ایم ایس اور وائس ویریفکیشن - آرڈر دینے کی سہولت - آرڈرز کی فہرست - آرڈر کی تفصیلات - ایپ ڈاؤن لوڈ - ڈیلیوری ایڈریس شامل کرنا، حذف کرنا اور تبدیل کرنا - اکاؤنٹ کی معلومات - سروس سینٹر - ریڈ پیکٹس (Red Packets) - پروفائل تصویر اپ لوڈ کرنا غیر دستیاب خصوصیت: ادائیگی (Payment) (README میں اسے 'ناممکن' قرار دیا گیا ہے)۔ # پروجیکٹ کا ڈھانچہ سورس کوڈ src ڈائریکٹری میں ہے، جس میں components (عام اجزاء جیسے پاپ اپ، کارٹ، کاؤنٹ ڈاؤن، لوڈنگ اینیمیشن، ریٹنگ اسٹارز، ریسٹورنٹ لسٹ، فوٹر اور ہیڈر)، config (env.js ماحول کی تبدیلی، fetch.js ڈیٹا حاصل کرنے کے لیے، mUtils.js عام طریقے، rem.js یونٹ کنورژن)، images، page (بزنس کے مطابق تقسیم شدہ صفحات جیسے balance, benefit, city, confirmOrder, download, find, food, forget, home, login, msite, order, points, profile, search, service, shop, vipcard)، plugins، router، service (getData.js انٹرفیس مینجمنٹ، tempdata عارضی ڈیٹا)، store (vuex کے action, getters, index, modules, mutation-types, mutations) اور style (common.scss, mixin.scss, swiper.min.css) شامل ہیں۔ روٹ ڈائریکٹری میں build (webpack کنفیگریشن)، config (پیکیجنگ پاتھ)، elm (آن لائن فائلیں)، screenshots (اسکرین شاٹس)، App.vue، main.js، index.html وغیرہ موجود ہیں۔ README کے مطابق اس میں 56 ڈائریکٹریز اور 203 فائلیں ہیں۔ # مصنف کا خلاصہ اور مستقبل کے اہداف README میں ذکر ہے کہ پیسوں (money) سے متعلق ویب لاجک کافی پیچیدہ ہے، مرچنٹس اور کھانوں کی اقسام زیادہ ہیں اور پیج انٹرایکشن پیچیدہ ہے، جس کی وجہ سے شاپنگ کارٹ اور آرڈرنگ کے دوران ڈیٹا اور لاجک مشکل ثابت ہوئے۔ ڈیزائن اور API دستاویزات نہ ہونے کی وجہ سے اسے مرحلہ وار سیکھنا پڑا۔ مصنف کا ماننا ہے کہ پیچیدہ انٹرایکشن لاجک کے لیے vuex ناگزیر ہے اور vue + vuex کے ذریعے بڑے سنگل پیج پروجیکٹس بنائے جا سکتے ہیں۔ مستقبل کے اہداف میں node.js کے ذریعے بیک اینڈ سسٹم بنانا، Android اور iOS کے لیے نیٹو ایپ ورژن تیار کرنا، اور وقت ملنے پر سیلر ورژن بنانا شامل ہے۔ # ڈیمو اور لائسنس README میں آن لائن ڈیمو ایڈریس (Chrome موبائل موڈ میں دیکھنے کی تجویز) اور موبائل QR کوڈ فراہم کیا گیا ہے، ساتھ ہی اسٹور لسٹ، فلٹر پیج، کارٹ، آرڈر کنفرمیشن، سرچ، لاگ ان اور پرسنل سینٹر کے اسکرین شاٹس بھی موجود ہیں۔ پروجیکٹ کے بارے میں بات چیت Gitter گروپ یا Issues/PR کے ذریعے کی جا سکتی ہے۔ لائسنس GPL ہے۔