প্রতিটি এক্সটেনশনের অবশ্যই ডকুমেন্টেশন থাকতে হবে যা ব্যবহারকারীদের শেখায় যে এক্সটেনশন কী করে এবং কীভাবে এটি ব্যবহার করতে হয়।
ন্যূনতম, প্রয়োজনীয়, ডকুমেন্টেশন হল তিনটি মার্কডাউন ফাইলের এই সেট:
-
PREINSTALL.md
-
POSTINSTALL.md
-
CHANGELOG.md
উপরন্তু, আপনি উত্পাদন বিবেচনা করা উচিত:
- এক্সটেনশনের সর্বজনীন সংগ্রহস্থলের জন্য একটি
README
ফাইল। - আপনার নিজস্ব ওয়েবসাইটে প্রকাশিত এবং আপনার
PREINSTALL.md
এ লিঙ্ক করা দীর্ঘ-ফর্মের টিউটোরিয়াল, গাইড এবং রেফারেন্স।
কিছু সর্বোত্তম অনুশীলন এবং সাধারণ বাক্যাংশ এবং গঠন শিখতে, আমরা অফিসিয়াল Firebase এক্সটেনশনগুলির সাথে উপলব্ধ ফাইলগুলি পর্যালোচনা করার পরামর্শ দিই৷
একটি README তৈরি করা হচ্ছে
আপনার এক্সটেনশন ডিরেক্টরিতে ঐচ্ছিকভাবে একটি README থাকতে পারে। লক্ষ্য করুন যে firebase ext:dev:init
কমান্ড স্বয়ংক্রিয়ভাবে আপনার জন্য একটি তৈরি করে না।
Firebase CLI, যদিও, আপনার extension.yaml
ফাইল এবং আপনার PREINSTALL.md
ফাইল থেকে টানা বিষয়বস্তু সম্বলিত একটি README
ফাইল স্বয়ংক্রিয়ভাবে তৈরি করতে নিম্নলিখিত সুবিধার কমান্ড সমর্থন করে:
firebase ext:info ./path/to/extension --markdown > README.md
অফিসিয়াল Firebase এক্সটেনশনের জন্য সমস্ত README ফাইল এই কমান্ড ব্যবহার করে তৈরি করা হয়।
ইনস্টলেশন তথ্য যোগ করুন
আপনি একটি README লেখা বা তৈরি করার পরে, এটিতে ইনস্টলেশন তথ্য যোগ করুন। আপনি একটি টেমপ্লেট হিসাবে নিম্নলিখিত স্নিপেট ব্যবহার করতে পারেন:
--- ## 🧩 Install this extension ### Console [][install-link] [install-link]: https://console.firebase.google.com/project/_/extensions/install?ref=publisher_id /extension_name ### Firebase CLI ```bash firebase ext:installpublisher_id /extension_name --project=[your-project-id] ``` > Learn more about installing extensions in the Firebase Extensions documentation: > [console](https://firebase.google.com/docs/extensions/install-extensions?platform=console), > [CLI](https://firebase.google.com/docs/extensions/install-extensions?platform=cli) ---
একটি PREINSTALL
ফাইল লেখা
PREINSTALL
ফাইলটি হল আপনার এক্সটেনশনের ওভারভিউ, এক ধরনের "মার্কেটিং" পৃষ্ঠা৷
এই ফাইলে কি বিষয়বস্তু আছে?
- আপনার এক্সটেনশনের কার্যকারিতার ব্যাপক বিবরণ
- পূর্বশর্তগুলির তালিকা, যেমন ডাটাবেস সেটআপ বা নন-Google পরিষেবাতে অ্যাক্সেস ( উদাহরণ )
- যেকোনো প্রাক-ইনস্টলেশন কাজ এবং তাদের নির্দেশাবলীর সংক্ষিপ্ত বিবরণ
- ইনস্টলেশন-পরবর্তী যেকোনো কাজের সংক্ষিপ্ত বিবরণ ( উদাহরণ ) (বিস্তারিত নির্দেশাবলী
POSTINSTALL
এ যায়) - যেকোনো বিলিং ইমপ্লিকেশনের সংক্ষিপ্ত বিবরণ ( বয়লারপ্লেট টেক্সট দিয়ে শুরু করুন)
এই বিষয়বস্তু ব্যবহারকারীর কাছে কোথায় প্রদর্শন করে?

ফায়ারবেস কনসোল">
- extensions.dev- এ এক্সটেনশনের পৃষ্ঠায়।
- আপনার এক্সটেনশনের জন্য আপনার সোর্স কোড রেপো (এক্সটেনশন ডিরেক্টরির ভিতরে)
- এক্সটেনশনের README এর অংশ হিসেবে (যদি আপনি Firebase CLI ব্যবহার করেন
--markdown > README.md
পতাকা)
PREINSTALL
ফাইলগুলি এক্সটেনশনের জন্য প্যারামিটারের মানগুলি অ্যাক্সেস করতে পারে না, তাই আপনার প্রকৃত মানগুলির সাথে প্যারামিটার রেফারেন্সের আশা করা উচিত নয়৷
কিছু সেরা অভ্যাস কি কি?
PREINSTALL
ফাইলের সম্পূর্ণ বিষয়বস্তু একটি পৃষ্ঠার নিচে রাখুন, যদি সম্ভব হয়এক্সটেনশনটি ইনস্টল করার আগে একজন শেষ ব্যবহারকারীর সম্পূর্ণরূপে জানতে হবে এমন বিশদ স্তর সরবরাহ করুন৷ POSTINSTALL
ফাইল বা অন্যান্য সম্পূরক ফাইলে বিস্তারিত নির্দেশনা দিনআপনি যদি এক্সটেনশনটিকে সমর্থন করার জন্য অন্যান্য সরঞ্জাম বা স্ক্রিপ্ট সরবরাহ করেন তবে সংক্ষেপে উল্লেখ করুন৷
সহায়ক PREINSTALL
বয়লারপ্লেট পাঠ্য
PREINSTALL
বয়লারপ্লেট পাঠ্যBilling
This extension uses other Firebase or Google Cloud services which may have
associated charges:
* <list Google services / products that your extension uses>
* <list Firebase services that your extension uses>
* Cloud Secret Manager <if the extension uses secret params>
* Cloud Functions
When you use Firebase Extensions, you're only charged for the underlying
resources that you use. A paid-tier billing plan is only required if the
extension uses a service that requires a paid-tier plan, for example calling to
a Google Cloud API or making outbound network requests to non-Google services.
All Firebase services offer a no-cost tier of usage.
[Learn more about Firebase billing.](https://firebase.google.com/pricing)
<Applicable info about billing implications for non-Google services, such as:>
Usage of this extension also requires you to have a <non-Google-service> account.
You are responsible for any associated costs with your usage of <non-Google-service>.
একটি POSTINSTALL
ফাইল লেখা
POSTINSTALL
ফাইল লেখাPOSTINSTALL
ফাইল হল আপনার এক্সটেনশনের বিস্তারিত পোস্ট-ইন্সটলেশন নির্দেশমূলক পৃষ্ঠা।
এই ফাইলে কি বিষয়বস্তু আছে?
যেকোন প্রয়োজনীয় পোস্ট-ইন্সটলেশন কাজের জন্য বিস্তারিত নির্দেশাবলী, যেমন ফায়ারবেস নিরাপত্তা নিয়ম সেট আপ করা বা ক্লায়েন্ট-সাইড কোড যোগ করা ( উদাহরণ ) কীভাবে অবিলম্বে ইনস্টল করা এক্সটেনশনটি চেষ্টা করবেন তার জন্য সাধারণ নির্দেশাবলী (উদাহরণস্বরূপ, "কনসোলে যান, তারপর এটি করুন") কিভাবে এক্সটেনশন ট্রিগার করতে হয় সে সম্পর্কে প্রাথমিক তথ্য, বিশেষ করে HTTP অনুরোধ-ট্রিগার করা এক্সটেনশনের জন্য কীভাবে ইনস্টল করা এক্সটেনশন নিরীক্ষণ করবেন তার জন্য সংক্ষিপ্ত নির্দেশাবলী ( বয়লারপ্লেট পাঠ্য দিয়ে শুরু করুন)
এই বিষয়বস্তু ব্যবহারকারীর কাছে কোথায় প্রদর্শন করে?

ফায়ারবেস কনসোল">
একজন ব্যবহারকারী আপনার এক্সটেনশন ইনস্টল করার পরে Firebase কনসোলে (ইনস্টল করা এক্সটেনশনের বিস্তারিত কার্ডে) একটি প্রকৃত প্রকল্পে আপনার এক্সটেনশন ইনস্টল করে POSTINSTALL
সামগ্রীর প্রদর্শন পর্যালোচনা করা নিশ্চিত করুন৷
আপনার এক্সটেনশনের জন্য আপনার সোর্স কোড রেপো (এক্সটেনশন ডিরেক্টরির ভিতরে)
POSTINSTALL
ফাইলগুলি এক্সটেনশনের জন্য প্যারামিটার মান এবং বেশ কয়েকটি ফাংশন-সম্পর্কিত ভেরিয়েবল অ্যাক্সেস করতে পারে। যখন Firebase কনসোলে POSTINSTALL
বিষয়বস্তু প্রদর্শিত হয়, তখন প্রকৃত মানগুলি প্যারামিটার বা পরিবর্তনশীল রেফারেন্সের পরিবর্তে প্রদর্শিত হয়। কিভাবে আপনার POSTINSTALL
ফাইলে পরামিতি এবং ভেরিয়েবল উল্লেখ করতে হয় সে সম্পর্কে নীচে আরও জানুন।
কিছু সেরা অভ্যাস কি কি?
POSTINSTALL
ফাইলের সম্পূর্ণ বিষয়বস্তু সংক্ষিপ্ত, কিন্তু বর্ণনামূলক রাখুন।স্বতন্ত্র কাজ বা ধারণাগুলিকে আলাদা করতে শিরোনাম ব্যবহার করে বিষয়বস্তু বিভাগ করুন। আপনার ওয়েবসাইটে ( উদাহরণ ) বা এক্সটেনশন রিপোজিটরির ( উদাহরণ ) মধ্যে সম্পূরক মার্কডাউন ফাইলগুলিতে একটি নির্দিষ্ট কর্মপ্রবাহ বা কাজের জন্য বিস্তারিত নির্দেশাবলী প্রকাশ করার কথা বিবেচনা করুন। রেফারেন্স প্যারামিটার এবং ফাংশন-সম্পর্কিত ভেরিয়েবল যাতে ব্যবহারকারী নির্দেশাবলীর পরিপ্রেক্ষিতে তাদের কনফিগার করা মানগুলি দেখতে পায়
রেফারেন্সিং পরামিতি এবং ভেরিয়েবল
POSTINSTALL
ফাইলের বিষয়বস্তু প্রদর্শন করে। আপনি যদি আপনার POSTINSTALL
ফাইলে পরামিতি এবং ফাংশন-সম্পর্কিত ভেরিয়েবলগুলি উল্লেখ করেন (নীচের টেবিল দেখুন), তাহলে কনসোল ইনস্টল করা উদাহরণের জন্য প্রকৃত মানগুলির সাথে এই রেফারেন্সগুলিকে পপুলেট করে।
POSTINSTALL
ফাইলে কনফিগার করা প্যারামিটার মানগুলি অ্যাক্সেস করুন:${param: PARAMETER_NAME }
POSTINSTALL
ফাইলে নিম্নলিখিত ফাংশন-সম্পর্কিত ভেরিয়েবলগুলি উল্লেখ করতে পারেন। Firebase এই ভেরিয়েবলগুলিকে সমর্থন করে যাতে আপনি আরও সহজে আপনার ব্যবহারকারীদের ইনস্টলেশন-পরবর্তী নির্দেশিকা প্রদান করতে পারেন। এগুলি শুধুমাত্র POSTINSTALL
ফাইলে ব্যবহারের জন্য উপলব্ধ কারণ এই ভেরিয়েবলগুলির মানগুলি ইনস্টলেশনের পরে উপলব্ধ নয়৷
extension.yaml
এর মধ্যে ফাংশনের রিসোর্স অবজেক্টের name
ক্ষেত্রের মান।
ফাংশন-সম্পর্কিত ভেরিয়েবলের জন্য রেফারেন্স | বর্ণনা | পরিবর্তনশীল মান (এক্সটেনশন ইনস্টলেশনের পরে Firebase দ্বারা স্বয়ংক্রিয়ভাবে জনবহুল) |
---|---|---|
${function: function-name .location} | ||
অবস্থান যেখানে ফাংশন স্থাপন করা হয় | উদাহরণ মান:us-central1 | |
${function: function-name .name} | ||
চূড়ান্ত নিয়োজিত ফাংশনের নাম, যা এক্সটেনশনের ইনস্ট্যান্স আইডি অন্তর্ভুক্ত করে | সাধারণ বিন্যাস: উদাহরণ মান: | |
${function: function-name .url} (শুধুমাত্র HTTP ফাংশনের জন্য প্রযোজ্য) | ||
চূড়ান্ত নিয়োজিত ফাংশনের URL, যেটিতে ক্লায়েন্ট কোড HTTP অনুরোধ করতে পারে | সাধারণ বিন্যাস: উদাহরণ মান: |
সহায়ক POSTINSTALL
বয়লারপ্লেট পাঠ্য
POSTINSTALL
বয়লারপ্লেট পাঠ্যMonitoring
As a best practice, you can
[monitor the activity](https://firebase.google.com/docs/extensions/manage-installed-extensions_community#monitor)
of your installed extension, including checks on its health, usage, and logs.
কীভাবে একটি এক্সটেনশন ট্রিগার করতে হয় তা নথিভুক্ত করা
POSTINSTALL
ফাইল লেখার জন্য সর্বোত্তম অনুশীলনগুলি মনে রাখবেন। কিভাবে এই নির্দেশাবলী প্রদান করতে হয় তার নির্দেশনার জন্য, নীচের বিভাগটি প্রসারিত করুন যা আপনার এক্সটেনশনে প্রযোজ্য।
পটভূমি ইভেন্ট-ট্রিগার করা এক্সটেনশন
কনসোলে সরাসরি পরিবর্তন করুন
ক্লায়েন্ট-সাইড কোড যোগ করুন
HTTP অনুরোধ-ট্রিগার করা এক্সটেনশন
extension.yaml
এর মধ্যে ফাংশনের রিসোর্স অবজেক্টে যে name
উল্লেখ করেছেন তার মতো নয়। একটি প্রজেক্টে একই এক্সটেনশনের একাধিক ইন্সটল সামঞ্জস্য করতে, ফায়ারবেস এই ফর্ম্যাটে ফাংশনটির নাম পরিবর্তন করে:ext- extension-instance-id - function-name
।
POSTINSTALL
ফাইলে অন্তর্ভুক্ত করার জন্য বয়লারপ্লেট পাঠ্যের প্রস্তাব দেওয়া হয়েছে৷ ইনস্টলেশনের পরে, Firebase কনসোল POSTINSTALL
ফাইলের বিষয়বস্তু প্রদর্শন করে এবং ইনস্টল করা উদাহরণের জন্য প্রকৃত কনফিগার করা মানগুলির সাথে এই রেফারেন্সগুলি পূরণ করে। উদাহরণস্বরূপ, যদি আপনি yourFunction
নামে একটি ফাংশন সংজ্ঞায়িত করেন তবে আপনি নিম্নলিখিতগুলি অন্তর্ভুক্ত করতে পারেন (প্রযোজ্য হিসাবে):
HTTP onRequest
ফাংশনের জন্যTo trigger this extension, make a request to or visit the following URL: **`${function:yourFunction.url}`**.
HTTP কলযোগ্য ( onCall
) ফাংশনের জন্যThis extension is implemented as an HTTP callable function. To call it from your client app, follow the instructions in the [callable functions documentation](https://firebase.google.com/docs/functions/callable#call_the_function). The name of the function to call is **`${function:yourFunction.name}`**, and its region is **`${function:yourFunction.location}`**.
একটি CHANGELOG ফাইল লেখা
এই ফাইলে কি বিষয়বস্তু আছে?
CHANGELOG.md
ফাইল থাকতে হবে যা আপনার প্রকাশ করা আপনার এক্সটেনশনের প্রতিটি নতুন সংস্করণে অন্তর্ভুক্ত পরিবর্তনগুলি নথিভুক্ত করে৷ প্রতিটি সংস্করণকে লেভেল 2 হেডারের নিচে রাখুন ( ##
); অন্যথায়, আপনি আপনার পছন্দ মতো মার্কডাউন ফর্ম্যাটিং ব্যবহার করতে পারেন।
## Version 0.1.3 feature - Support deletion of directories (issue #148). ## Version 0.1.2 feature - Add a new param for recursively deleting subcollections in Cloud Firestore (issue #14). fixed - Fixed "cold start" errors experienced when the extension runs after a period of inactivity (issue #48). ## Version 0.1.1 Initial release of the _Delete User Data_ extension.
এই বিষয়বস্তু ব্যবহারকারীর কাছে কোথায় প্রদর্শন করে?
- Firebase কনসোল এবং CLI-এ, যখন ব্যবহারকারীরা আপনার এক্সটেনশনের নতুন সংস্করণে আপগ্রেড করেন। Firebase কনসোল এবং CLI শুধুমাত্র সেই পরিবর্তনগুলি প্রদর্শন করে যা ব্যবহারকারী আপগ্রেড সম্পূর্ণ করলে কার্যকর হবে।
- আপনার এক্সটেনশনের সোর্স কোড রেপো (এক্সটেনশন ডিরেক্টরির ভিতরে)।