bower এর ব্যবহার

11 May, 2015

প্রথমেই একটা অভিজ্ঞতা শেয়ার করি। কিছুদিন আগে একটা প্রজেক্টে কাজ করার সময় দেখলাম আমি জেকুয়েরি ডেটাটেবিল প্লাগিনের যে ভার্সন ব্যবহার করেছিলাম তার একটা আপডেট ভার্সন রিলিজ পেয়েছে, যেখানে সর্টিং সুবিধা যুক্ত হয়েছে। আপডেট করার সময় মনে হলো যদি ক্লায়েন্ট সাইড ডিপেন্ডেন্সি ম্যানেজ করার জন্য কম্পোজারের মত কোন টুল থাকতো? সার্চ করতেই খোজ পেলাম বাওয়ারের।

বাওয়ার টুইটারের তৈরি করা ক্লায়েন্ট সাইট ডিপেন্ডেন্সি ম্যানেজমেন্ট টুল। এটি আসলে একটি নোড প্যাকেজ। সুতরাং বাওয়ার ব্যবহার করতে হলে আপনার পিসিতে অবশ্যই নোডজেএস ইনস্টল থাকা লাগবে। নোড ইনস্টল করলে এর সাথে সাথে এর প্যাকেজ ম্যানেজার npm(নোড প্যাকেজ ম্যানেজার)ও ইনস্টল হয়। বাওয়ার ইনস্টল করার জন্য আপনাকে নিচের কমান্ডটি টার্মিনালে লিখতে হবে-

npm install -g bower

ইনস্টল হয়ে গেলে এটি চেক করার জন্য টার্মিনালে লিখুন-

bower -v

এবার আপনি বাওয়ার ব্যবহার করতে পারবেন, ঠিক যেভাবে npm বা composer ব্যবহার করেন। ধরুন আপনি জেকুয়েরি ইনস্টল করতে চান। যেমন-

bower install jquery

এবার ধরুন আপনি বুটস্ট্র্যাপ ইনস্টল করতে চান। এরজন্য আপনাকে লিখতে হবে-

bower install bootstrap

এখন বুটস্ট্র্যাপ যেহেতু জেকুয়েরির উপর নির্ভরশীল, তাই বুটস্ট্র্যাপ ইনস্টল করলে এর যত ডিপেন্ডেন্সি আছে সেগুলিও ইনস্টল হয়ে যাবে।

এখন ধরুন আপনি যে প্যাকেজগুলি ইনস্টল করেছেন, সেগুলির লিস্ট একটা ফাইলে সেভ করে রাখতে চান। এটা আপনি করতে পারবেন bower.json নামের ফাইলে। এই ফাইলটি তৈরি করতে লিখুন-

bower init

এখন আপনি যে প্যাকেজটি ইনস্টল করেছেন, সেটি যদি বাওয়ার ফাইলো সেভ করে রাখতে চান, তাহলে লিখুন-

bower install jquery --save

এই --save এর মাধ্যমে আপনি ডিপেন্ডেন্সি হিসেবে যোগ করতে পারবেন। আপনি চাইলে ডেভেলপার ডিপেন্ডেন্সিতেও যুক্ত করতে পারবেন এভাবে-

bower install jquery --save-dev

বাই ডিফল্ট বাওয়ার তার সমস্ত প্যাকেজ ইনস্টল করে bower_components নামে ফোল্ডারে। আপনি চাইলে এটি পরিবর্তন করতে পারবেন .bowerrc ফাইলের মাধ্যমে। এটি একটি জেসন ফাইল, এটি দেখতে হবে অনেকটা এরকম-

{
  "directory": "app/components/",
  "analytics": false,
  "timeout": 120000,
  "registry": {
    "search": [
      "http://localhost:8000",
      "https://bower.herokuapp.com"
    ]
  }
}

বাওয়ার এপিআই সম্পর্কে বিস্তারিত জানার জন্য আপনি http://bower.io সাইটটি ভিজিট করতে পারবেন।