LWS এর হাতেকলমে প্রজেক্ট
LWS প্রোজেক্ট ৩- মুভি পোর্টাল
Before Start Coding

🔥 Before Start Coding

১. Project Scope ঠিক করা

  • App টির উদ্দেশ্য/লক্ষ্য কী? (উদাহরণ: Movie Portal - মুভি দেখতে, রেটিং দিতে, সার্চ করতে ইত্যাদি)
  • Target User কে?

২. Features List তৈরি করা

  • তাপস ভাই এই ভিডিতে বলেছেন, কি কি ফিচার থাকবে সিনে রেন্টাল/মুভি পোর্টাল অ্যাপে।
  • প্রাথমিক ভাবে কি কি ফিচার থাকবে লিস্ট করা।

    • মুভি লিস্ট রেন্ডার করা, এবং মুভি কার্ডে প্রত্যেকটা মুভির বিস্তারিত দেখানোন যেমন- মুভির ফটো, রেটিং, মুভি ক্যাটাগরি, কার্ট বাটনে প্রাইস দেখানো।
    • যেকোনো একটি মুভি কার্ডে ক্লিক করলে ডিটেইলস মডাল পপ করে মুভিটির বিস্তারিত তথ্য দেখানো।
    • কার্ট বাটনে ক্লিক করলে মুভিটি কার্টে যুক্ত হবে। কার্ট +১ হবে এবং কার্টে ক্লিক করে ঐ মুভির প্রাইস, ফটো ও নাম কার্টে শো করবে। অলরেডি যুক্ত থাকলে ইউজারকে ওয়ার্নিং দিবে।
    • কার্টের মধ্যে ফিচার থাকবে মুভি রিমুভ করার। সব মুভি রিমুভ করলে কার্ট খালি মেসেজ দেখাবে।

    (Example: Movie Search, Watchlist Add, Review System, User Login)

৩. UI/UX Design তৈরি করা

  • Sketch করুন বা ফিগমা/কোনো টুল দিয়ে Full UI Design বানান।
  • নিজে পারেন, না পারলে UX Designer এর সাহায্য নিন।

এই এপ্লিকেশনের ডিজাইন-

১। Movie Portal Homepage

Full Page Screenshot

২। Movie Portal Movie Details Modal

Full Page Screenshot

৩। Movie Portal Cart

Full Page Screenshot

৪। Theme Switch UI

switch theme

৪. Break Down your sketch UI (Component Break Down)

  • UI দেখে সিদ্ধান্ত নিন কোন কোন অংশ আলাদা কম্পোনেন্ট হবে।
    (Example: Header, Footer, MovieCard, SearchBar, Sidebar)

Break Down your sketch UI

break down your sketch UI

তাপস ভাই, নিচের ভিডিওতে দেখিয়েছেন- কিভাবে UI breakdown করতে হয়। ,

৫. Component Hierarchy তৈরি করা

ccomponent hierarchy মানে কোন কম্পোনেন্টের ভিতর কোনটা থাকবে সেটা ঠিক করা।

component hierarchy
  • কোন কম্পোনেন্টের ভিতর কোনটা থাকবে সেটা Tree আকারে সাজান। (Example: App → Header, Main → Sidebar, MovieList → MovieCard)

তাপস ভাই, নিচের ভিডিওতে দেখিয়েছেন- কিভাবে Component Hierarchy তৈরি করতে হয়।

৬. Data Passing / Structure / State Planning করা

  • কোন Data গুলো কোন কম্পোনেন্টের দরকার হবে ঠিক করুন।
  • কোন কম্পোনেন্টে কোন State থাকবে বা Global State লাগবে কি না ঠিক করুন।
    (Example: Movies List, Selected Movie Details, User Authentication State)

MovieData Passing Problem to Cart Details

data passing

৭. Routes Planning করা (যদি Routing লাগে)

  • কোন পেজে কি থাকবে সেটার Map তৈরি করুন।
    (Example: /movies, /movies/:id, /login)

৮. Folder Structure Plan করা

  • প্রজেক্টের ফোল্ডার কিভাবে সাজাবেন সেটা আগে ঠিক করুন।
    (Example: components/, pages/, services/, hooks/, utils/ ইত্যাদি)

⚡ Bonus Tips:

  • Version Control: Git ব্যবহার করুন। প্রতিটি বড় পরিবর্তনের আগে commit করুন।
  • Documentation: কোডের সাথে সাথে ডকুমেন্টেশন রাখুন।
    (Example: README.md, comments in code)