১. ভূমিকা
এই কোডল্যাবে, আপনি Gemini CLI Conductor এক্সটেনশন ব্যবহার করে সফটওয়্যার অ্যাপ্লিকেশন পরিকল্পনা ও নির্মাণ করতে শিখবেন। আপনি সম্পূর্ণ শূন্য থেকে একটি "গ্রিনফিল্ড" অ্যাপ্লিকেশন তৈরি করার মাধ্যমে শুরু করবেন। তারপর, আপনি এটিকে একটি "ব্রাউনফিল্ড" প্রজেক্ট হিসেবে বিবেচনা করবেন এবং এতে অথেনটিকেশন ও স্টোরেজ যুক্ত করার জন্য পর্যায়ক্রমে কাজ করবেন।
আপনি যা করবেন
- Gemini CLI এবং Conductor এক্সটেনশন ইনস্টল করুন
- কন্ডাক্টরের পরিকল্পনা এবং বাস্তবায়ন ক্ষমতা ব্যবহার করে শুরু থেকে একটি "পিকার হুইল" ওয়েব অ্যাপ তৈরি করুন।
- Firebase ব্যবহার করে অথেনটিকেশন এবং স্টোরেজ যোগ করার মাধ্যমে অ্যাপ্লিকেশনটিতে ব্যক্তিগতকরণ যুক্ত করুন।
আপনি যা শিখবেন
- একটি ‘গ্রিনফিল্ড’ অ্যাপ্লিকেশনের পরিকল্পনা, বাস্তবায়ন এবং পর্যালোচনার জন্য কন্ডাক্টর এক্সটেনশন কীভাবে ব্যবহার করবেন
- একটি 'ব্রাউনফিল্ড' অ্যাপ্লিকেশনে ফিচার যোগ করতে কন্ডাক্টর এক্সটেনশন কীভাবে ব্যবহার করবেন
আপনার যা যা লাগবে
- ক্রোমের মতো একটি ওয়েব ব্রাউজার
- বিলিং সক্ষম একটি গুগল ক্লাউড প্রজেক্ট
- Node.js ইনস্টল করা আছে (ভার্সন ১৮+ সুপারিশকৃত)
- ভিজ্যুয়াল স্টুডিও কোডের মতো একটি স্থানীয় কোড এডিটর
২. শুরু করার আগে
একটি গুগল ক্লাউড প্রজেক্ট তৈরি করুন
- গুগল ক্লাউড কনসোলের প্রজেক্ট সিলেক্টর পেজে, একটি গুগল ক্লাউড প্রজেক্ট নির্বাচন করুন বা তৈরি করুন ।
- আপনার ক্লাউড প্রোজেক্টের জন্য বিলিং চালু আছে কিনা তা নিশ্চিত করুন। কোনো প্রোজেক্টে বিলিং চালু আছে কিনা তা কীভাবে পরীক্ষা করবেন, তা জেনে নিন।
ক্লাউড শেল শুরু করুন
ক্লাউড শেল হলো গুগল ক্লাউডে চালিত একটি কমান্ড-লাইন পরিবেশ, যা প্রয়োজনীয় টুলস সহ আগে থেকেই লোড করা থাকে।
- Google Cloud কনসোলের শীর্ষে থাকা Activate Cloud Shell-এ ক্লিক করুন।
- ক্লাউড শেলে সংযুক্ত হওয়ার পর, আপনার প্রমাণীকরণ যাচাই করুন:
gcloud auth list - আপনার প্রজেক্টটি কনফিগার করা হয়েছে কিনা তা নিশ্চিত করুন:
gcloud config get project - আপনার প্রজেক্টটি প্রত্যাশা অনুযায়ী সেট করা না থাকলে, এটি সেট করুন:
export PROJECT_ID=<YOUR_PROJECT_ID> gcloud config set project $PROJECT_ID
এপিআই সক্ষম করুন
আপনার গুগল ক্লাউড প্রজেক্টে ফায়ারবেস ম্যানেজমেন্ট এপিআই সক্রিয় করুন।
gcloud services enable firebase.googleapis.com
আপনার প্রজেক্টে ফায়ারবেস যোগ করুন
ক্লাউড শেলে ফায়ারবেস সিএলআই আগে থেকেই ইনস্টল করা থাকে। ক্লাউড শেল থেকে, সেই একই গুগল অ্যাকাউন্ট দিয়ে সাইন ইন করুন যা আপনাকে গুগল ক্লাউড প্রজেক্টে অ্যাক্সেস দেয়। আপনি যদি স্থানীয়ভাবে কাজ করেন, তাহলে নির্দেশাবলী অনুসরণ করে ফায়ারবেস সিএলআই ইনস্টল করুন।
firebase login
আপনার গুগল ক্লাউড প্রজেক্টে ফায়ারবেস যোগ করতে নিম্নলিখিত কমান্ডটি চালান:
firebase projects:addfirebase
আপনি যদি প্রথমবারের মতো firebase CLI চালান, তাহলে আপনাকে জিজ্ঞাসা করা যেকোনো প্রশ্নের উত্তর দিন।
ক্লাউড শেল থেকে প্রস্থান করুন
আপনি ক্লাউড শেল উইন্ডোটি বন্ধ করতে পারেন। পরবর্তী অংশে আমরা আপনার স্থানীয় পরিবেশ কনফিগার করব।
৩. স্থানীয়ভাবে Gemini CLI এবং Conductor ইনস্টল করুন।
এই ধাপে, আপনি আপনার স্থানীয় কোড এডিটর ও টার্মিনাল ব্যবহার করে Gemini CLI এবং Conductor এক্সটেনশন ইনস্টল করার মাধ্যমে আপনার স্থানীয় ডেভেলপমেন্ট পরিবেশ প্রস্তুত করবেন।
Gemini CLI ইনস্টল করুন
- npm ব্যবহার করে Gemini CLI-এর সর্বশেষ সংস্করণটি বিশ্বব্যাপী ইনস্টল করুন :
npm install -g @google/gemini-cli - আপনার টার্মিনালটি পুনরায় চালু করুন , যাতে
geminiআপনার PATH-এ যুক্ত হয়। - যাচাই করুন যে ইনস্টলেশনটি সর্বশেষ সংস্করণ ইনস্টল করেছে:
gemini --version - একটি নতুন প্রজেক্ট ডিরেক্টরি তৈরি করুন এবং তাতে প্রবেশ করুন : পরবর্তী একটি অংশে আমরা
picker-wheelডিরেক্টরিতে একটি প্রজেক্ট তৈরি করব। এখন সেই ডিরেক্টরিটি তৈরি করুন এবং এই ডিরেক্টরিতে প্রবেশ করুন:mkdir picker-wheel cd picker-wheel - প্রমাণীকরণ করুন :
- জেমিনি সিএলআই চালু করুন।
gemini - যখন জিজ্ঞাসা করা হবে "আপনি কি এই ফোল্ডারের ফাইলগুলিকে বিশ্বাস করেন?", তখন ট্রাস্ট ফোল্ডার (পিকার-হুইল) নির্বাচন করুন।
- যখন জিজ্ঞাসা করা হবে "আপনি এই প্রোজেক্টের জন্য কীভাবে প্রমাণীকরণ করতে চান?", তখন Vertex AI নির্বাচন করুন। একটি Google Cloud API কী পেতে এবং
GOOGLE_API_KEYএনভায়রনমেন্ট ভেরিয়েবল সেট করতে প্রমাণীকরণ নির্দেশিকা অনুসরণ করুন। বিভিন্ন ব্যবহারের স্তর এবং সেগুলোর সংশ্লিষ্ট API রেট লিমিটগুলো সম্পর্কে জানতে কিছুক্ষণ সময় নিন।
- জেমিনি সিএলআই চালু করুন।
- জেমিনি সিএলআই থেকে প্রস্থান করুন : চালিয়ে যাওয়ার আগে আপনার লাইভ জেমিনি সিএলআই সেশনটি শেষ করতে সিএলআই টার্মিনাল থেকে
/quitটাইপ করুন।
কন্ডাক্টর এক্সটেনশন ইনস্টল করুন
কন্ডাক্টর হলো গুগল নির্মিত একটি ওপেন-সোর্স জেমিনি সিএলআই এক্সটেনশন, যা পরিকল্পনা এবং বাস্তবায়ন ট্র্যাকিংয়ের মতো প্রেক্ষাপট-নির্ভর ডেভেলপমেন্ট ফিচারগুলো সক্ষম করে।
- এক্সটেনশনটি ইনস্টল করুন :
gemini extensions install https://github.com/gemini-cli-extensions/conductor - ইনস্টলেশন যাচাই করুন :
- জেমিনি সিএলআই চালু করুন।
gemini -
/conductorটাইপ করলে আপনিsetup,newTrack,implementইত্যাদির মতো কমান্ডের একটি তালিকা দেখতে পাবেন।
- জেমিনি সিএলআই চালু করুন।
- জেমিনি সিএলআই থেকে প্রস্থান করুন : চালিয়ে যাওয়ার আগে আপনার লাইভ জেমিনি সিএলআই সেশনটি শেষ করতে সিএলআই টার্মিনাল থেকে
/quitটাইপ করুন।
৪. গ্রিনফিল্ড ডেভেলপমেন্ট: দ্য পিকার হুইল
এখন যেহেতু আপনার পরিবেশ প্রস্তুত, আপনি একেবারে শুরু থেকে একটি নতুন অ্যাপ্লিকেশন তৈরি করবেন। আপনি একটি "পিকার হুইল" তৈরি করবেন — এটি একটি হালকা ওয়েব অ্যাপ যা ঘুরে একটি র্যান্ডম অপশন বেছে নেয়।
পণ্যের প্রেক্ষাপট সেটআপ করুন
- নিশ্চিত করুন যে আপনি পূর্ববর্তী বিভাগে তৈরি করা
picker-wheelডিরেক্টরিতে আছেন :pwd - Gemini CLI চালু করুন : আপনার প্রজেক্ট ডিরেক্টরি থেকে একটি নতুন Gemini CLI সেশন শুরু করুন।
gemini - কন্ডাক্টর চালু করুন : প্রজেক্টটি স্ক্যাফোল্ড করতে এবং কন্ডাক্টর এনভায়রনমেন্ট সেট আপ করতে সেটআপ কমান্ডটি চালান।
/conductor:setup - ইন্টারেক্টিভ নির্দেশাবলী অনুসরণ করুন : আপনি যে ইন্টারেক্টিভ নির্দেশাবলী দেখবেন তা এই উদাহরণগুলির সাথে হুবহু মিলবে না। কন্ডাক্টর ওয়ার্কফ্লোর সাথে পরিচিত হওয়ার জন্য একটি সরল ডিজাইনের উপর মনোযোগ দিন।
- পণ্যের লক্ষ্য : এমন একটি ওয়েব অ্যাপ্লিকেশন তৈরি করা, যা একটি তালিকা থেকে দৈবচয়নের মাধ্যমে কোনো একটি আইটেম বেছে নেওয়ার জন্য একটি কনফিগারযোগ্য ঘূর্ণায়মান চাকা প্রদর্শন করবে।
- লক্ষ্য দর্শক → সাধারণ জনগণ
- মিথস্ক্রিয়া → ঘোরানোর জন্য ট্যাপ/ক্লিক করুন
- কাস্টমাইজেশন → বেসিক
- প্ল্যাটফর্ম → ডেস্কটপ-প্রথম
- পণ্য নির্দেশিকা : স্বয়ংক্রিয়ভাবে তৈরি করুন।
- টেক স্ট্যাক :
- ভাষা → টাইপস্ক্রিপ্ট/জাভাস্ক্রিপ্ট - ফুল-স্ট্যাক ওয়েবের জন্য আদর্শ
- ফ্রন্টএন্ড → Vue.js - স্বজ্ঞামূলক ওয়েব ইন্টারফেস
- ব্যাকএন্ড → এক্সপ্রেস.জেএস - দ্রুত নোড ব্যাকএন্ড
- ডাটাবেস → নেই - কোনো ডাটাবেসের প্রয়োজন নেই
- কার্যপ্রবাহ : প্রমিত।
- পণ্যের প্রয়োজনীয়তা :
- ব্যবহারকারীর গল্প → কাস্টমাইজযোগ্য বিকল্প, সুস্পষ্ট বিজয়ী প্রদর্শন
- মূল বৈশিষ্ট্য → সম্পাদনাযোগ্য বিকল্প তালিকা, এলোমেলো রং
- সীমাবদ্ধতা → শুধুমাত্র ক্লায়েন্ট-সাইড, উচ্চ কর্মক্ষমতা
- নন-ফাংশনাল → উচ্চ টেস্ট কভারেজ, টাইপস্ক্রিপ্ট ও ভিউ.জেএস, রেসপন্সিভ ডিজাইন
conductor/ডিরেক্টরিতে কনটেক্সট ফাইল তৈরি করবে। - পণ্যের লক্ষ্য : এমন একটি ওয়েব অ্যাপ্লিকেশন তৈরি করা, যা একটি তালিকা থেকে দৈবচয়নের মাধ্যমে কোনো একটি আইটেম বেছে নেওয়ার জন্য একটি কনফিগারযোগ্য ঘূর্ণায়মান চাকা প্রদর্শন করবে।
একটি নতুন ট্র্যাক তৈরি করুন
কন্ডাক্টর-এ একটি "ট্র্যাক" কোনো একটি বৈশিষ্ট্য বা কাজের একককে বোঝায়।
-
/conductor:newTrackব্যবহার করে একটি নতুন ট্র্যাক শুরু করুন । Conductor প্রোডাক্ট কনটেক্সটের উপর ভিত্তি করে একটি প্রাথমিক ট্র্যাক প্রস্তাব করতে পারে। বিকল্পভাবে, আপনি নিজের ট্র্যাক প্রস্তাব করতে পারেন অথবা Conductor-কে একটি ট্র্যাক সাজেস্ট করতে বলতে পারেন। - তৈরি হওয়া প্ল্যানটি পর্যালোচনা করুন : Conductor
conductor/tracks/{track-id}/ভিতরে একটিindex.md, একটিspec.mdএবং একটিplan.mdতৈরি করবে। ফাইলগুলো পড়ার জন্য একটু সময় নিন। সবকিছু ঠিকঠাক মনে হলে, Conductor আপনাকে প্রাথমিক সেটআপ ফাইলগুলো সেভ এবং কমিট করার জন্য বলবে।
ট্র্যাকটি বাস্তবায়ন করুন
- বাস্তবায়ন শুরু করুন :
কন্ডাক্টর এখন পরিকল্পনাটি নিয়ে কাজ করবে এবং প্রকল্পটির জন্য কোড লিখবে।/conductor:implement - অ্যাপ্লিকেশনটি যাচাই করুন : বাস্তবায়ন পর্ব জুড়ে, কন্ডাক্টর আপনাকে অ্যাপ্লিকেশনটি ম্যানুয়ালি পরীক্ষা করার জন্য অনুরোধ করবে। উদাহরণস্বরূপ, এটি আপনাকে স্থানীয় ওয়েব সার্ভার খুলতে, আপনার ব্রাউজারে অ্যাপ্লিকেশনটির প্রিভিউ দেখতে এবং পরিবর্তনগুলি যাচাই করতে বলবে। বাস্তবায়ন সম্পূর্ণ হলে, আপনি একটি কার্যকরী পিকার হুইল দেখতে পাবেন।

- বাস্তবায়ন পর্যালোচনা করুন : শেষ ধাপ হিসেবে, আপনি Conductor-কে বাস্তবায়নটি পর্যালোচনা করতে বলতে পারেন। এটির কাজ হলো সোর্স কোড পর্যালোচনা করা, প্রোজেক্টের ডকুমেন্টেশন সিঙ্ক্রোনাইজ করা এবং ট্র্যাকটি আর্কাইভ করা।
/conductor:review
৫. ব্রাউনফিল্ড ইটারেশন: ব্যক্তিগতকরণ যোগ করুন
এখন আপনি "ব্রাউনফিল্ড" ডেভেলপমেন্টের দিকে মনোযোগ দেবেন। আপনি পূর্ববর্তী অংশের পিকার হুইল ওয়েব অ্যাপ্লিকেশনটি উন্নত করবেন, যাতে সাইন-ইন করা ব্যবহারকারীরা তাদের পিকার হুইল কনফিগারেশন সংরক্ষণ এবং পুনরুদ্ধার করতে পারেন।
একটি ব্যক্তিগতকরণ ট্র্যাক তৈরি করুন
- নিম্নলিখিত 'ব্রাউনফিল্ড' উদাহরণে, আমরা প্রমাণীকরণ এবং সংরক্ষণের জন্য ফায়ারবেস ব্যবহার করব। জেমিনি সিএলআই ফায়ারবেস এক্সটেনশনটি ইনস্টল করুন যাতে কন্ডাক্টর এটি ব্যবহার করতে পারে।
gemini extensions install https://github.com/gemini-cli-extensions/firebase - Gemini CLI চালু করুন : আপনার প্রজেক্ট ডিরেক্টরি থেকে একটি নতুন Gemini CLI সেশন শুরু করুন।
gemini - নতুন ট্র্যাক শুরু করুন : নতুন ট্র্যাক শুরু করুন।
/conductor:newTrack "I want users to be able to log in to their accounts and save their picker wheel configurations." - ইন্টারেক্টিভ নির্দেশাবলী অনুসরণ করুন : আপনি যে ইন্টারেক্টিভ নির্দেশাবলী দেখবেন তা এই উদাহরণগুলির সাথে হুবহু মিলবে না। কন্ডাক্টর ওয়ার্কফ্লোর সাথে পরিচিত হওয়ার জন্য একটি সরল ডিজাইনের উপর মনোযোগ দিন।
- ট্র্যাকের লক্ষ্য :
- প্রমাণীকরণ প্রদানকারী → ফায়ারবেস প্রমাণীকরণ
- সংরক্ষিত কনফিগারেশন → চাকার বিকল্প
- ডেটা স্টোরেজ → ফায়ারস্টোর
- ফায়ারস্টোর লগইন UI → মোডাল ওভারলে
conductor/tracks/{track-id}এর ভিতরে একটি নতুন ট্র্যাকের জন্য কনটেক্সট ফাইল তৈরি করবে। - ট্র্যাকের লক্ষ্য :
- তৈরি হওয়া প্ল্যানটি পর্যালোচনা করুন :
conductor/tracks/{track-id}/এর ভেতরে থাকাindex.md,spec.mdএবংplan.mdফাইলগুলো পড়ার জন্য একটু সময় নিন। - বাস্তবায়ন : সবকিছু ঠিকঠাক মনে হলে, আপনি বাস্তবায়ন শুরু করতে পারেন।
/conductor:implement - যাচাই করুন : আপনার অ্যাপ্লিকেশনটি রিলোড করুন। আপনি একটি আপডেট হওয়া অ্যাপ্লিকেশন দেখতে পাবেন।

এখানে একটি রেফারেন্স ইমপ্লিমেন্টেশনের জন্য মূল কোডটি দেওয়া হলো। আপনার অ্যাপ্লিকেশনটি সঠিকভাবে চালু করার জন্য আপনাকে অবশ্যই .firebaserc ফাইলে আপনার Firebase প্রজেক্ট এবং firebase.ts ফাইলে আপনার Firebase কনফিগারেশনগুলো প্রদান করতে হবে।
৬. পরিষ্কার করুন
আপনার গুগল ক্লাউড অ্যাকাউন্টে চলমান চার্জ এড়াতে, এই কোডল্যাব চলাকালীন তৈরি করা রিসোর্সগুলো মুছে ফেলুন।
ফায়ারবেস প্রজেক্ট (এবং গুগল ক্লাউড প্রজেক্ট) মুছে ফেলুন
পরিষ্কার করার সবচেয়ে সহজ উপায় হলো প্রজেক্টটি পুরোপুরি মুছে ফেলা।
- গুগল ক্লাউড কনসোলে , আপনার তৈরি করা প্রজেক্টটি নির্বাচন করুন।
- ডিলিট-এ ক্লিক করুন।
বিকল্পভাবে, যদি আপনি প্রজেক্টটি রাখতে চান কিন্তু রিসোর্সগুলো মুছে ফেলতে চান:
- ফায়ারস্টোর ডেটাবেস মুছুন : ফায়ারবেস কনসোল > ফায়ারস্টোর- এ যান এবং ডেটাবেসটি মুছে ফেলুন।
- প্রমাণীকরণ মুছুন : Firebase কনসোল > প্রমাণীকরণ সাইন-ইন পদ্ধতিতে যান, Google নিষ্ক্রিয় করুন।
৭. অভিনন্দন
অভিনন্দন! আপনি সফলভাবে Gemini CLI Conductor এক্সটেনশনটি ব্যবহার করে একেবারে শুরু থেকে একটি ওয়েব অ্যাপ্লিকেশন তৈরি করেছেন এবং তারপর অথেনটিকেশন ও ডেটাবেস ইন্টিগ্রেশনের মতো জটিল বৈশিষ্ট্য যোগ করে সেটিকে উন্নত করেছেন।
পরবর্তী পদক্ষেপ
- হালকা পরিকল্পনার জন্য জেমিনি সিএলআই প্ল্যান মোড অন্বেষণ করুন।
- আরও জেমিনি সিএলআই এক্সটেনশন অন্বেষণ করুন