22/06/2022
গুরুত্বপূর্ণ কিছু NPM প্যাকেজ পরিচিতি পর্ব ১ :
React front-end Design & Development এর জন্য কিছু গুরুত্বপূর্ণ "npm" প্যাকেজ যা আপনার দৈনন্দিন কাজে যথেষ্ট সহায়ক ভূমিকা রাখবে। উক্ত প্যাকেজগুলো বহুল ব্যবহৃত হচ্ছে এবং আপনার কাজ সহজতর করার জন্য এইগুলো খুবই দারুণ ভূমিকা রাখবে।
1) carousel Slider ---- একটি ওয়েবসাইটে অবশ্যই আমরা স্লাইডার ব্যবহার করে থাকে ধরতে গেলে 90% ওয়েবসাইটের মধ্যে আমাদেরকে স্লাইডার ব্যবহার করতে হয় এখানে তিনটি স্লাইডার দেওয়া আছে প্রত্যেকটি খুবই দারুন কাজ করছে এবং এদের গঠন গুলো অনেক সহজ।
---- https://www.npmjs.com/package/react-slick (I personally use it)
---- https://www.npmjs.com/package/rc-slider
---- https://www.npmjs.com/package/swiper
2) Marquee ----- অনেক সময় আমাদের প্রয়োজন হয় এমন একটি স্লাইডার show যেটি আপনা আপনি চলতে থাকবে । বেশিরভাগই আমরা যখন লোগো section ব্যবহার করি তখন এই Marquee ডিজাইন টি ব্যবহার করি। আপনারা চাইলে React Fast Marquee এই npm প্যাকেজটি ব্যবহার করতে পারেন । একদম সহজ ও খুবই আকর্ষণীয় ডিজাইন দ্বারা বিল্ড করা হয়েছে।
---- https://www.npmjs.com/package/react-fast-marquee
3) JavaScript image gallery and lightbox ---- আমাদের অনেক সময় গ্যালারি ইমেজ শো করার প্রয়োজন পড়তে পারে । এমনকি আমরা অনেক ওয়েবসাইট ও দেখেছি যে গ্যালারি ইমেজ পপ-আপ এর মাধ্যমে শুরু হয় আপনারা এই প্যাকেজটি ব্যবহার করে ঠিক একই রকম গ্যালারি ইমেজ পপ-আপ এর মাধ্যমে দেখাতে পারবেন।
---- https://www.npmjs.com/package/photoswipe
---- https://www.npmjs.com/package/react-image-lightbox
4) Lazyload ---- নাম শুনে বুঝতে পারছেন এটির কাজ কি এটি হলো Lazyload. একটি ওয়েব সাইটের কনটেন্ট যখন অতিরিক্ত হয়ে যায় তখন ওয়েবসাইটটি লোড নিতে অনেক সময় নেই আর এই Lazyload npm প্যাকেজটি আপনাকে এমন কিছু ফিচার দিবে যা অবাক করার মত। অর্থাৎ আপনার স্কিন যতটুকু ঠিক ততটুকুই লোড নিবে - সম্পূর্ণ পেজ কখনো লোড নিবে না আপনি ওয়েবসাইট scroll করবেন আর scroll পাশাপাশি এটি লোড নেবে। যার কারণে আপনার ওয়েব পেজটি সম্পূর্ণ না হওয়ার আগেও গ্রাহকগণ আপনার কনটেন্ট গুলো দেখতে পাবে।
---- https://www.npmjs.com/package/react-lazyload
5) Modal-video ---- ওয়েবসাইট তৈরি করতে গেলে অনেক সময় আমাদেরকে ইউটিউব ভিডিও অথবা নিজের তৈরি ভিডিও দেখানো প্রয়োজন পড়তে পারে এবং আমরা অনেক ওয়েবসাইটে দেখেছি যে একটি বাটনে ক্লিক করলে পপ-আপ এর মাধ্যমে ইউটিউব ভিডিও শো হয় এবং এটি চলতে থাকে আপনারা চাইলে এই প্যাকেজটি ব্যবহার করে একই ভাবে ইউটিউব ভিডিও পপ-আপ show করাতে পারবে।
---- https://www.npmjs.com/package/react-modal-video
---- https://www.npmjs.com/package/react-player
6) Tooltip ---- কোন একটি আইটেম এর উপর মাউস hover করলাম আর হঠাৎ দেখলাম কিছু একটা দেখাচ্ছে, হা এটিকে বলে Tooltip। আপনারা চাইলে এই প্যাকেজটি ব্যবহার করে সুন্দর সুন্দর Tooltip ইউজ করতে পারেন। এখানে বেশ কয়েকটি ধরনের ডিজাইন রয়েছে যা খুবই দারুণ।
---- https://www.npmjs.com/package/react-tooltip
---- https://atomiks.github.io/tippyjs/
7) Recharts ---- সাধারণত আমরা যখন ড্যাশবোর্ড তৈরি করে অথবা এডমিন প্যানেল তৈরি করি তখন আমাদেরকে গ্রাফ চার্ট এর মাধ্যমে ডাটা গুলো দেখতে হয় আর গ্রাপচাট এর মাধ্যমে ডাটাগুলোকে দেখানোর জন্য এই npm প্যাকেজটির অতুলনীয় ভূমিকা রয়েছে আমি ব্যক্তিগতভাবে এটি ব্যবহার করেছি যথেষ্ট ভাল এবং বন্ধুত্বপূর্ণ আচরণ রয়েছে এটির মাঝে।
---- https://recharts.org/en-US
8) Animate ---- আর যাই হোক এনিমেশন ছাড়া একটি ওয়েবসাইট কখনো শতভাগ সৌন্দর্যতা তৈরি করা যায় না। একটি ওয়েবসাইট এ আকর্ষণ তৈরি হয় এই এনিমেশন এর ধরন দ্বারা। নীচে আমি বেশ কিছু এনিমেশন ব্যবহারের npm প্যাকেজ দিয়েছি যা খুবই জনপ্রিয় এবং শীর্ষ।
---- https://animate.style/
---- http://michalsnik.github.io/aos/
---- https://mojs.github.io/
---- https://www.npmjs.com/package/react-reveal
---- https://dbramwell.github.io/react-animate-on-scroll/
9) Alert ------ নাম শুনে বুঝতে পারছেন এটির কাজ কি হতে পারে। ওয়েবসাইটে যখন আমাদের সংকেতের প্রয়োজন পড়তে পারে তখন আমরা এটি ব্যবহার করতে পারি। উদাহরণস্বরূপ একজন ব্যক্তি আপনার ওয়েবসাইটে কন্টাক্ট ফর্ম এ গিয়ে আপনাকে মেসেজ সেন্ড করলো এখন কাজটি সফল হয়েছে কিনা তা জানার জন্য তাকে একটি সাংকেতিক বিবরণ পাঠিয়ে দিলেন আর এই সাংকেতিক বিবরণ পাঠানোর জন্য এই npm প্যাকেজ গুলো খুবই দারুন কাজ কাজের।
---- https://www.npmjs.com/package/sweetalert2
---- https://sweetalert.js.org/guides/
---- https://www.npmjs.com/package/cogo-toast
---- https://www.npmjs.com/package/ngx-toastr
---- https://www.npmjs.com/package/react-toastify
---- https://www.npmjs.com/package/notistack
10) Google-maps ---- ওয়েবসাইটে maps অনেক সময়ই আমাদেরকে রাখতে হয় এবং আমরা অনেক ওয়েবসাইটেও দেখেছি যে maps রয়েছে যাতে করে কাস্টমার লোকেশন সঠিকভাবে জানতে পারে। আপনি এই npm প্যাকেজটি ব্যবহার করে গুগল ম্যাপ সেটআপ করতে পারবেন খুব সহজে।
---- https://www.npmjs.com/package/-google-maps/api
11) Menu ---- এটির মাধ্যমে মেনু তৈরি করা যায়। যারা কাস্টম মেনু তৈরি করতে হিমশিম খাচ্ছেন তারা এটি ব্যবহার করতে পারেন। তবে আমি মনে করি আপনি যদি কাস্টম মেনু তৈরী করতে না পারেন তাহলে কোন ফ্রেমওয়ার্ক যেমন Bootstrap, material-ui ইত্যাদি ব্যবহার করেন আর যদি ভালো লাগে এই প্যাকেজটি ও ব্যবহার করতে পারেন।
---- https://www.npmjs.com/package/rc-menu
---- https://www.npmjs.com/package/rc-drawer
12) Sticky Nav ---- অনেক ওয়েবসাইটে দেখা যায় Navbar position Fixed আছে কিন্তু একটু করে scroll করার সাথে সাথে দেখা যায় একটি ইফেক্টিভ ডিজাইন Navbar উপর থেকে নিচে নামে আর এটি করার জন্য আপনারা এই প্যাকেজটি ব্যবহার করতে পারেন।
---- https://www.npmjs.com/package/react-js-stickynav
13) scroll-to-top ---- ধরুন আপনি ওয়েবসাইটের scroll করতে করতে একদম নিচে footer এ চলে আসলেন কিন্তু আপনাকে কোন একটা কারণে একদম উপরে উঠতে হচ্ছে, তখন আপনি কি করবেন ? সাধারণত আমরা যা করি scroll ঘুরিয়ে আবার উপরে চলে যায় কিন্তু এখানে একটি প্যাকেজ যা ব্যবহার করতে পারেন। একটি আইকন এর মাধ্যমে আপনি click করলে ঠিক একদম Home স্টেজে চলে যেতে পারবেন অর্থাৎ Footer থাকা একটি আইকন এ ক্লিক করলে আপনি একদম উপরে এক লাফে উঠে যেতে পারবেন।
---- https://www.npmjs.com/package/react-scroll-to-top
---- https://www.npmjs.com/package/react-scroll-up
14) Perfect-scrollbar ---- জনপ্রিয় একটি প্যাকেজ হল Perfect-scrollbar, এটি সাধারণত বেশিরভাগই ব্যবহার করা হয় এডমিন প্যানেল অথবা ড্যাশবোর্ডে যখন আমাদের প্রচুর সংখ্যক ডাটা থাকে এবং তা ওয়েবসাইটের দেখাতে হয় তখন এই প্যাকেজটি সাহায্য অতীব জরুরী। এতে নির্দিষ্ট একটি আয়তনের ভিত্তিতে ডাটাগুলো রাখে এবং ওই আয়তন এর মধ্যে স্ক্রোলিং ইফেক্ট তৈরি করে। যদি আমরা প্রচুর ডাটা নরমালি ওয়েবসাইটে রাখি তাহলে উক্ত ওয়েবসাইট এর লম্ব প্রচুর হয়ে যাবে তাই এই প্যাকেজটি ব্যবহার করে একটি নির্দিষ্ট সেকশন এর মধ্যে হাজার হাজার ডাটা লোড করা যাবে আর সেগুলো স্ক্রল করে উক্ত সেকশন এর মধ্যে দেখানো যাবে।
---- https://www.npmjs.com/package/perfect-scrollbar
15) React-ui-scrollspy ---- অনেক সময় আমরা একটি পেজের মাধ্যমে সকল আইটেম শো করে থাকি যেমন, Home, About, Blog, Contact, Portfolio ইত্যাদি । আর ঠিক তখন প্রয়োজন পড়ে scroll করার সময় menu আইটেমে ও section অপশনটির একটিভ করা এই প্যাকেজটি মাধ্যমে আপনি এই সকল কাজ খুব সহজেই করতে পারবেন ।
---- https://www.npmjs.com/package/react-ui-scrollspy
16) React Icons ---- কোন কথা হবে না জাস্ট ইন্সটল করবেন আর ব্যবহার করবেন। এই npm প্যাকেজটির উপকারিতা কথা বলে বোঝানো যাবে না। আমাদেরকে ওয়েবসাইডে স্বাভাবিকভাবে আইকন সেটআপ করতে হয় আর এই আইকন সেট আপের জন্য বিভিন্ন ওয়েবসাইটে গিয়ে ভিড় জমাতে হয়। আপনি চাইলে এই প্যাকেজটি ব্যবহার করে সকল আইকন এখান থেকে পেতে পারেন। যে যে আইকন গুলো এখানে পাবেন --- Bootstrap Icons , BoxIcons Devicons, Feather Flat Color Icons, Font Awesome, Game Icons, Github Octicons icons, Grommet-Icons, Heroicons, IcoMoon Free, Ionicons 4, Ionicons 5, Material Design icons, Remix Icon, Simple Icons, Tabler Icons , Typicons, VS Code Icons, Weather Icons, css.gg
---- https://react-icons.github.io/react-icons/ (I can't go on without it).
17) Spinners ---- যখন ওয়েবসাইট লোড নেয় তখন আমাদেরকে স্পিনার বসাতে হয়। আপনারা এই npm প্যাকেজগুলো ব্যবহার করে খুব দারুণ দারুণ স্পিনার ব্যবহার করতে পারেন।
---- https://www.npmjs.com/package/react-spinners
---- https://www.npmjs.com/package/spinners-react
---- https://www.npmjs.com/package/react-loader-spinner
18) React-code-input ---- অনেক সময় আমাদের মোবাইল নাম্বার থেকে OTP (one-time password) এর প্রয়োজন পড়তে পারে আপনাদের যদি ঐরকম পরিস্থিতি তে ওয়েবসাইট তৈরি করতে হয় তাহলে এই npm প্যাকেজটি ব্যবহার করতে পারেন । এটির মাধ্যমে খুব সুন্দর ভাবে code ইনপুট নিয়ে নেয়।
---- https://www.npmjs.com/package/react-code-input
19) React-currency-format ---- ই-কমার্স ওয়েবসাইট এ অনেক সময় টাকার পরিমান ফরমেট আকারে সাজানোর প্রয়োজন হতে পারে। আর আপনি টাকার পরিমাণ সাজানোর জন্য এই npm প্যাকেজটি ব্যবহার করতে পারেন।
---- https://www.npmjs.com/package/react-currency-format
---- https://nosir.github.io/cleave.js/
20) React-countup ---- নির্দিষ্ট সংখ্যক সংখ্যা সময় নিয়ে বৃদ্ধি পাবে এমন ডিজাইন তৈরির ক্ষেত্রে এটি বেশ কার্যকর আমরা বেশিরভাগ ওয়েবসাইটে দেখে থাকি যে অমুক কোম্পানি একটি কাজ করেছিল আর তাদের টিমে কতজন সদস্য রয়েছে এবং আরও দেখা যায় শূন্য থেকে গণনা শুরু করে সেটি একটি নির্দিষ্ট সংখ্যা পর্যন্ত গিয়ে দাঁড়ায় আপনি চাইলে এই প্যাকেজটি ব্যবহার করে সেটি তৈরি করতে পারবেন।
----- https://www.npmjs.com/package/react-countup
Credit: Stack Learner - Programming Community
React port of slick carousel. Latest version: 0.29.0, last published: 2 months ago. Start using react-slick in your project by running `npm i react-slick`. There are 1661 other projects in the npm registry using react-slick.