Skip to content

Commit a2f2b62

Browse files
committed
assignment-7
1 parent 80416c6 commit a2f2b62

40 files changed

+44661
-0
lines changed

assignment-7/.gitignore

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2+
3+
# dependencies
4+
/node_modules
5+
/.pnp
6+
.pnp.js
7+
8+
# testing
9+
/coverage
10+
11+
# production
12+
/build
13+
14+
# misc
15+
.DS_Store
16+
.env.local
17+
.env.development.local
18+
.env.test.local
19+
.env.production.local
20+
21+
npm-debug.log*
22+
yarn-debug.log*
23+
yarn-error.log*

assignment-7/README.md

+62
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
## এসাইনমেন্ট রিকুয়ারমেন্ট:
2+
3+
মডিউল ৭ এ আমরা React এবং Redux Toolkit ব্যবহার করে আরো একটি প্রজেক্ট দেখে ফেললাম। এবার সেই প্রজেক্টের আলোকে আমরা আরো একটি এসাইনমেন্ট করে ফেলবো।
4+
5+
এই এসাইনমেন্ট এর জন্যে repository এর 'html' ফোল্ডারে HTML template দিয়ে দেয়া হয়েছে, সেটিকে React এ কনভার্ট করে নিতে হবে। সেই সাথে repository এর 'server' ফোল্ডারে একটি JSON mock server ও দিয়ে দেয়া হয়েছে। সেখানে কিছু Jobs তৈরি করাই থাকবে। কোনো অবস্থাতেই API সার্ভারের পোর্ট বা End Point পরিবর্তন করা যাবে না। **এসাইনমেন্ট শেষে, JSON Server কোথাও হোস্ট করার কোনো প্রয়োজন নেই।** শুধু মাত্র Frontend টুকু হোষ্ট করে দিলেই চলবে। Frontend হোস্ট করার পরে ঠিক মতো কাজ করছে কিনা তা চেক করার জন্য আপনি localhost এ সার্ভার চালিয়ে রেখে চেক করতে পারবেন।
6+
7+
**উল্লেখ্য যে, এসাইনমেন্ট এর ডিজাইনে কোন ধরনের পরিবর্তন করা যাবে না এবং HTML template এ দেয়া কোনো বাটন বা এলিমেন্ট এর ক্লাস বা আইডি পরিবর্তন করা যাবে না। সেই ক্লাস বা আইডি দিয়েই আপনাকে এসাইনমেন্টটি সম্পন্ন করতে হবে। অন্যথায় এসাইনমেন্টটি গ্রহনযোগ্য হবে না এবং এসাইনমেন্ট এর কোনো মার্ক নাও পেতে পারেন।**
8+
9+
## এই এসাইনমেন্ট এ যা যা করতে হবেঃ
10+
11+
✓ JSON সার্ভার থেকে Jobs গুলো Fetch করে নিয়ে এসে লিস্টে দেখাতে হবে। 'Internship', 'Full Time', 'Remote' জব এর জন্যে আলাদা আলাদা কালার কোড দেয়া আছে, সেই কালার কোড অনুযায়ী লিস্টে দেখাতে হবে।
12+
13+
✓ সাইডবার থেকে 'Add New Job' এ ক্লিক করলে, React Router Dom ব্যবহার করে, 'Create' পেজে নিয়ে যেতে হবে এবং প্রয়োজনীয় তথ্য দিয়ে Save বাটনে ক্লিক করলে, সেটি Redux Store এ গিয়ে Save হয়ে যাবে।
14+
15+
✓ সাইডবার থেকে 'All Available Jobs' এ ক্লিক করলে, সব গুলো জব দেখাবে, Internship এ ক্লিক করলে শুধুমাত্র 'Internship' এর জব গুলো দেখাবে। একইভাবে 'Full Time' এবং 'Remote' জব এ ক্লিক করলে শুধু মাত্র 'Full Time' এবং 'Remote' জব গুলোই ফিল্টার করে দেখাবে।
16+
17+
✓ এডিট বাটনে ক্লিক করলে, এডিট পেজে নিয়ে যাবে এবং জব এর সব তথ্য গুলো এডিট করার ব্যবস্থা করে দিবে। তথ্য পরিবর্তন করে Edit বাটনে ক্লিক করলে তথ্য পরিবর্তন হয়ে 'All Available' পেজে চলে যাবে।
18+
19+
✓ ডিলিট বাটনে ক্লিক করলে, ঐ জবটি ডিলিট হয়ে যাবে।
20+
21+
✓ সার্চ ফিচার এড করতে হবে। সেক্ষেত্রে সার্চ করার সময় শুধুমাত্র জব এর টাইটেল দিয়ে জব সার্চ হবে এবং এটি ক্লাইন্ট সাইড এ করতে হবে, সার্ভার সাইডে করার প্রয়োজন নেই।
22+
23+
✓ সার্চ এর পাশে ফিল্টার এর ড্রপডাউন আছে, সেখানে ক্লিক করলে Salary অনুযায়ী sorting হবে। অর্থাৎ কখনো বেতন 'কম থেকে বেশি' (ascending), আবার কখনো 'বেশি থেকে কম' (descending) এভাবে sort করে দেখাবে। এটি ক্লাইন্ট সাইড এ করতে হবে, সার্ভার সাইডে করার প্রয়োজন নেই।
24+
25+
## কিভাবে সাবমিট করবেন:
26+
27+
সবচেয়ে সহজে বুঝার জন্য [এই ভিডিওটি](https://learnwithsumit.com/courses/think-in-a-redux-way/how-to-submit-assignment) দেখে ফেলুন।
28+
29+
এসাইনমেন্টে আপনাকে মাত্র দুইটা জিনিস সাবমিট করতে হবে।
30+
31+
1. **GitHub private repository link:** অবশ্যই সঠিক গিটহাব রিপোজিটরি লিংক দিতে হবে। ভুলে অন্য কোনো লিংক দিলে আপনি এসাইনমেন্টের মার্ক পাবেন না তাই সাবমিট করার আগে নিউ ট্যাবে লিংক ওপেন করে চেক করে নিবেন সঠিক লিংক জমা দিচ্ছেন কিনা।
32+
33+
2. **Live site link:** নেটলিফাইতে সাইট হোস্ট করে সাইটের লাইভ লিংক দিতে হবে। ভুলে অন্য কোনো লিংক দিলে আপনি এসাইনমেন্টের মার্ক পাবেন না তাই সাবমিট করার আগে নিউ ট্যাবে লিংক ওপেন করে চেক করে নিবেন সঠিক লিংক জমা দিচ্ছেন কিনা। নেটলিফাইতে কি ভাবে হোস্ট করতে হয় তা আপনি না জানলে [এইখানে ক্লিক](https://learnwithsumit.com/courses/think-in-a-redux-way/how-to-submit-assignment) করে দেখে নিতে পারেন।
34+
35+
**সাবমিট একবারই করতে পারবেন তাই ভালো করে দেখে সাবমিট করবেন।**
36+
37+
## GitHub private repository কিভাবে তৈরি করবেন:
38+
39+
Github Private repositoty তৈরি করতে [এইখানে ক্লিক করুন](https://classroom.github.com/a/Un7Igj_G) অথবা ব্রাউজারে এই লিংকে **https://classroom.github.com/a/Un7Igj_G** ভিজিট করুন। লিংকে যাওয়ার পরে **Accept this assignment** এ ক্লিক করুন। সর্বোচ্চ ১মিনিট পরে পেইজটি রিলোড দিলে আপনি আপনার রিপোজেটরি লিংক পেয়ে যাবেন। মনে রাখবেন, আপনাকে এই লিংকটি আমাদের প্লাটফর্মে সাবমিট করতে হবে। না বুঝলে উপরে বলা ভিডিও টিউটোরিয়ালটি দেখে নিন।
40+
41+
## Assignment এর জন্য প্রয়োজনীয় template HTML এবং server কোথায় পাবেন:
42+
43+
প্রতিটি assignment এর সাথে প্রয়োজনীয় HTML template এবং "server" folder (API) আমরা দিয়ে দিয়েছি যেন আপনাকে HTML template এবং সার্ভার সাইড কাজ নিয়ে সময় নষ্ট না করতে হয়। কোর্সের GitHub repository এর সংশ্লিষ্ট ব্রাঞ্চে গেলেই আপনারা 'html' folder এর ভিতর HTML template পাবেন। একই ভাবে 'server' folder এ server API পেয়ে যাবেন। না বুঝলে [এইখানে ক্লিক](https://learnwithsumit.com/courses/think-in-a-redux-way/how-to-submit-assignment) করে টিউটোরিয়াল দেখে নিতে পারেন।
44+
45+
## এসাইনমেন্ট মার্কস পলিসি:
46+
47+
আপনি নির্ধারিত সময়ে এসাইনমেন্ট জমা দিলে এবং সব কিছু সঠিকভাবে করলে সম্পূর্ণ মার্ক পাবেন। এর পরে জমা দিলে আপনার মার্ক নিচের নিয়মে কাটা যাবে -
48+
49+
1. ডেডলাইনের পরে এক ঘণ্টার মধ্যে জমা দিলে 10% মার্ক কাটা যাবে।
50+
2. ডেডলাইনের পরে এক ঘণ্টার বেশি কিন্তু 24 ঘণ্টার মধ্যে জমা দিলে 30% মার্ক কাটা যাবে।
51+
3. ডেডলাইনের পরে 24 ঘণ্টার বেশি পরে জমা দিলে 50% মার্ক কাটা যাবে।
52+
4. কোর্স ডিউরেশনের পরে আমরা এসাইনমেন্ট গ্রহণ করবো না।
53+
54+
অবশ্যই কোর্স চলাকালিন সময়ে এসাইনমেন্ট জমা দিতে হবে। কোর্সের ডিউরেশন শেষ হয়ে গেলে তার পরে আপনি এসাইনমেন্টে জমা দিলে এসাইনমেন্টের মার্ক পাবেন না।
55+
56+
## সাবমিট করার পর কোড পরিবর্তন:
57+
58+
আপনি ভেবে নিতে পারেন আপনি ওয়েবসাইটে সঠিক সময়ে এসাইনমেন্ট সাবমিট করে নীরবে পরে গিটহাবে কোড পুশ করতে থাকবেন! আপনার গিটহাবের সর্বশেষ কমিট দেখলেই আমরা বুঝতে পারবো আপনি কখন কোড আপডেট করেছেন। সে অনুযায়ী আমরা আপনার মার্ক কেটে নিবো। তাই এসাইনমেন্ট এর সময় পার হবার পরে আমরা আশা করবো আপনি চালাকি করে আর কোড পুশ করবেন না আপনার রিপোজিটরিতে। এটা করলে আপনার সম্পূর্ণ মার্ক কাটা যেতে পারে।
59+
60+
## এসাইনমেন্ট মার্কস কবে পাবেন:
61+
62+
আমরা সর্বোচ্চ ৭ দিনের ভিতরে এসাইনমেন্টের মার্ক দিয়ে দেওয়ার চেষ্টা করবো। ক্ষেত্র বিশেষে একটু দেরি হতে পারে কারো কারো মার্ক পেতে।

assignment-7/jsconfig.json

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"compilerOptions": {
3+
"baseUrl": "src"
4+
},
5+
"include": ["src"]
6+
}

0 commit comments

Comments
 (0)