প্রম্পট ডেটা

IMGPrompt-এর প্রম্পট লাইব্রেরি সংকলিত হয়েছে অনলাইন উৎস, promptoMANIA, sd-webui-prompt-all-in-one এবং awesome-gpt-image-2-prompts (CC BY 4.0) থেকে। ডুপ্লিকেট অপসারণ, মানকীকরণ ও ১৮টি ভাষায় লোকালাইজেশনের পর মোট 5000+ এন্ট্রি দাঁড়িয়েছে — ১৬টি মূল বিভাগ ও শত শত উপবিভাগে বিন্যস্ত।

ডেটা স্ট্রাকচার

সব প্রম্পট ডেটা প্রজেক্ট ডিরেক্টরি src/app/data-র অধীনে থাকে:

src
└── app
    └── data
        ├── prompt              # ১৮টি ভাষার প্রম্পট
        │   ├── prompt-zh.json  # সরলীকৃত চীনা (মূল উৎস, অন্য ভাষা এটি থেকে তৈরি)
        │   ├── prompt-en.json  # ইংরেজি
        │   ├── prompt-ja.json  # জাপানি
        │   └── ......          # বাকি ১৫টি ভাষা
        └── prompt-custom.json  # ব্যবহারকারীর কাস্টম প্রম্পট (সব ভাষায় লোড হয়)

প্রতিটি প্রম্পট একটি JSON অবজেক্ট:

{
  "displayName": "portrait",
  "langName": "প্রতিকৃতি",
  "object": "চিত্র",
  "attribute": "মৌলিক",
  "description": "(ঐচ্ছিক) বিবরণ বা লেখকের কৃতিত্ব",
  "preview": "(ঐচ্ছিক) প্রিভিউ ছবির URL"
}

ফিল্ডের ব্যাখ্যা

ফিল্ড আবশ্যক ব্যাখ্যা
displayName ✅ হ্যাঁ ইউনিক ইংরেজি প্রম্পট — প্রম্পট বক্সে আসলে যা যুক্ত হয়
langName ✅ হ্যাঁ মাতৃভাষা/লক্ষ্য ভাষার অনুবাদ, UI-তে ট্যাগের গায়ে দেখায়
object ✅ হ্যাঁ মূল বিভাগ (যেমন চিত্র / পরিবেশ / আলোকচিত্র / শিল্প শৈলী)
attribute ✅ হ্যাঁ উপবিভাগ (যেমন মৌলিক / পরিচয় / বয়স / দেখার উচ্চতা)
description ❌ না প্রিভিউ পপওভারে দেখানো বাড়তি তথ্য (লেখকের কৃতিত্ব, ব্যবহার-টিপস ইত্যাদি) — ডেস্কটপে হোভার / টাচে লং-প্রেসে দেখায়
preview ❌ না প্রিভিউ ছবির URL — ডেস্কটপে হোভার বা টাচে প্রায় ০.৫ সেকেন্ড লং-প্রেসে পপওভারে দেখায়, থাম্বনেইলে ক্লিক / ট্যাপ করলে lightbox-এ বড় হয়

💡 preview ফিল্ডটিই "হোভার / লং-প্রেস প্রিভিউ + ক্লিক-টু-জুম" ফিচারের ডেটা উৎস। ডেস্কটপে hover দিয়ে, টাচ ডিভাইসে লং-প্রেস দিয়ে ট্রিগার হয়; দ্রুত ক্লিক / ট্যাপ শুধুই ট্যাগ যোগ / অপসারণ করে।

ডেটা রক্ষণাবেক্ষণ টিপস

  • displayName অবশ্যই ইউনিক রাখুন — ডুপ্লিকেট উপেক্ষিত হয় এবং সাজেশনের মানও কমায়।
  • কমা কনভেনশন: ", " (কমা + স্পেস) হলো অ্যাপের ট্যাগ বিভাজক; সমষ্টিগত এন্ট্রির ভেতরে স্পেসবিহীন "," ব্যবহার করুন (যেমন snow,ice)। স্পেসযুক্ত বা ফুল-উইডথ কমা বিল্ডের সময় আটকে দেওয়া হয় (sliceData যাচাই)।
  • সব ভাষায় একই object / attribute মান পুনঃব্যবহার করুন, যাতে ইন্টারফেসের বিভাগবিন্যাস সামঞ্জস্যপূর্ণ থাকে।
  • langName যথাসম্ভব সংক্ষিপ্ত রাখুন, নইলে ট্যাগ লেবেল কেটে যেতে পারে।
  • preview-র জন্য WebP ফরম্যাট, ≤ 150 KB, বর্গাকার (1:1) কম্পোজিশন সুপারিশ করা হয় — হোভার / লং-প্রেস পপওভারে সবচেয়ে ভালো দেখায়।

কাস্টম প্রম্পট যোগ করা

প্রম্পট কন্টেন্ট বাড়াতে IMGPrompt ডেটা কনভার্টার দিয়ে নিজের ডেটা স্ট্যান্ডার্ড ফরম্যাটে রূপান্তর করুন। রূপান্তরের ফলাফল src/app/data/prompt-custom.json-এ সেভ করুন — অ্যাপ চালু হওয়ার সময় এটি স্বয়ংক্রিয়ভাবে লোড হয় এবং সব ভাষার পরিবেশে প্রযোজ্য।

উদাহরণ:

[
  {
    "displayName": "cyberpunk cityscape",
    "langName": "সাইবারপাঙ্ক শহর",
    "object": "পরিবেশ",
    "attribute": "শহর"
  },
  {
    "displayName": "cinematic lighting",
    "langName": "সিনেমাটিক আলো",
    "object": "আলো এবং ছায়া প্রভাব",
    "attribute": "আলোর প্রভাব",
    "description": "নরম দিকনির্দেশিত আলো + রিম লাইটে গভীরতা বাড়ে",
    "preview": "https://example.com/preview/cinematic.webp"
  }
]

কাস্টম এন্ট্রি বিল্ট-ইন এন্ট্রির মতো হুবহু একই নিয়মে দেখায়: preview থাকলে হোভার / লং-প্রেস প্রিভিউ + ক্লিক-টু-জুম সুবিধা পাবে।