Case Converter

Case Converter

যেকোনো স্ট্রিংকে একসাথে ১১টি নামকরণ কনভেনশনে রূপান্তর করুন — camelCase, PascalCase, snake_case, kebab-case এবং আরও অনেক। সাথে JSON-keys ব্যাচ মোড যা পুনরাবৃত্তভাবে প্রতিটি কী পুনর্লিখন করে। সবকিছু আপনার ব্রাউজারে।

Case Converter — TL;DR

যেকোনো স্ট্রিংকে একসাথে ১১টি নামকরণ কনভেনশনে রূপান্তর করুন — camelCase, PascalCase, snake_case, kebab-case এবং আরও অনেক। সাথে JSON-keys ব্যাচ মোড যা পুনরাবৃত্তভাবে প্রতিটি কী পুনর্লিখন করে। সবকিছু আপনার ব্রাউজারে।

এগুলো সবই বহু-শব্দ আইডেন্টিফায়ার (অথবা ফাইলের নাম, URL, CSS ক্লাস) স্পেস ছাড়া লেখার উপায়। camelCase প্রথম শব্দ ছাড়া প্রতিটি শব্দের প্রথম অক্ষরকে বড় হাতের করে (`userFirstName`), JavaScript, Java, Swift-এ ব্যবহৃত হয়। snake_case সব ছোট হাতের করে এবং আন্ডারস্কোর দিয়ে যুক্ত করে (`user_first_name`), Python, Ruby, SQL-এ ব্যবহৃত হয়। kebab-case হাইফেন ব্যবহার করে (`user-first-name`), CSS, HTML, URL স্লাগ, কমান্ড-লাইন ফ্ল্যাগে ব্যবহৃত হয়। PascalCase হলো camelCase যেখানে প্রথম অক্ষরটিও বড় হাতের (`UserFirstName`), অনেক ভাষায় ক্লাস / টাইপ নামের জন্য ব্যবহৃত হয়।

টোকেনাইজার দুটি সীমানা নিয়ম ব্যবহার করে: lower-to-upper (`a`-এর পরে `B` = বিভক্ত) এবং caps-then-Title (বড় হাতের অক্ষরের একটি সিরিজের পরে একটি ছোট হাতের অক্ষর শেষ বড় হাতের অক্ষরের আগে বিভক্ত হয়)। তাই `XMLHttpRequest` হয়ে যায় `[XML, Http, Request]` → `xml_http_request` / `xmlHttpRequest` / `XmlHttpRequest`। `userIDToken` হয়ে যায় `[user, ID, Token]` → `user_id_token`। এটি বেশিরভাগ ভাষার স্টাইল গাইডের সুপারিশের সাথে মেলে।

আইডেন্টিফায়ার এবং JSON কখনো আপনার ডিভাইস ছাড়ে না। DevTools → Network খুলুন এবং রূপান্তর বা কপির সময় আপনি শূন্য আউটবাউন্ড অনুরোধ দেখতে পাবেন।

এগারোটি নামকরণ কনভেনশন, একটি পেস্ট

ক্লাসিক camelCase / snake_case থেকে dot.case / path/case পর্যন্ত — সাথে JSON-keys ব্যাচ মোড যা একটি নেস্টেড অবজেক্টের প্রতিটি কী পুনঃনামকরণ করে।

১১টি case স্টাইল, সবগুলো একসাথে

camelCase, PascalCase, snake_case, CONSTANT_CASE, kebab-case, COBOL-CASE, dot.case, path/case, Title Case, Sentence case, UPPERCASE, lowercase। একবার পেস্ট করুন, প্রতিটি আউটপুট তাৎক্ষণিকভাবে দেখুন।

স্মার্ট টোকেনাইজেশন

সব ইনপুট স্টাইল জুড়ে আইডেন্টিফায়ারগুলোকে সঠিকভাবে বিভক্ত করে — `XMLHttpRequest` → `xml_http_request`, `userIDToken` → `user_id_token`। সংক্ষিপ্ত রূপ, সংখ্যা এবং মিশ্র বিভাজক (_, -, ., /) বিভ্রান্তি ছাড়াই হ্যান্ডেল করে।

JSON-keys ব্যাচ মোড

একটি নেস্টেড JSON অবজেক্ট পেস্ট করুন এবং আপনার পছন্দের স্টাইলে প্রতিটি কী পুনর্লিখন করুন — পুনরাবৃত্তভাবে। ঐচ্ছিকভাবে স্ট্রিং মানগুলোও রূপান্তর করুন। অ্যারে, টাইপ এবং কাঠামো সংরক্ষণ করে।

এক-ক্লিকে কপি

প্রতিটি আউটপুট সারির নিজস্ব কপি বোতাম রয়েছে — ক্লিক করুন এবং মান আপনার ক্লিপবোর্ডে চলে যায়। ভিজুয়াল নিশ্চিতকরণ; কোনো টোস্ট স্প্যাম নেই।

ডিজাইনে গোপনীয়তা

প্রতিটি রূপান্তর আপনার ডিভাইসে JavaScript-এ চলে। কোনো আইডেন্টিফায়ার, কোনো JSON, কোনো ক্লিপবোর্ড কার্যকলাপ কখনো প্রেরণ করা হয় না। DevTools → Network খুলুন এবং শূন্য আউটবাউন্ড অনুরোধ যাচাই করুন।

ছোট + দ্রুত

বিশুদ্ধ JavaScript, কোনো ফ্রেমওয়ার্ক রানটাইম নেই। কোল্ড লোড 25 KB gzipped-এর কম। যেকোনো স্ট্রিংয়ের জন্য সব ১১টি রূপান্তর 1 ms-এর মধ্যে শেষ হয়।

কনভার্টার কীভাবে ব্যবহার করবেন

দুটি মোড — একক-স্ট্রিং এবং JSON-keys ব্যাচ।

  1. 1

    মোড বাছাই করুন

    একটি আইডেন্টিফায়ার বা বাক্যাংশের জন্য একক স্ট্রিং — একবার টাইপ / পেস্ট করুন, সব ১১টি case আউটপুট দেখুন। যখন আপনাকে একটি নেস্টেড API রেসপন্স বা কনফিগ ফাইলের প্রতিটি কী রূপান্তর করতে হবে তখন JSON keys (ব্যাচ)

  2. 2

    আপনার ইনপুট পেস্ট করুন

    একক-স্ট্রিং মোড যেকোনো ইনপুট গ্রহণ করে — `userFirstName`, `user_first_name`, `user-first-name`, `USER FIRST NAME`, এমনকি `XMLHttpRequest`। টোকেনাইজার এটি সঠিকভাবে বিভক্ত করে এবং প্রতিটি আউটপুট স্টাইলের জন্য পুনরায় যুক্ত করে। JSON মোড যেকোনো বৈধ JSON অবজেক্ট গ্রহণ করে — গভীরতা গুরুত্বপূর্ণ নয়।

  3. 3

    একটি লক্ষ্য স্টাইল বাছাই করুন

    একক-স্ট্রিং মোডে, সব ১১টি আউটপুট একসাথে প্রদর্শিত হয় — যেটি প্রয়োজন সেটি বাছাই করুন। JSON মোডে, ড্রপডাউন থেকে একটি লক্ষ্য case বাছাই করুন; অবজেক্টের প্রতিটি কী সেই স্টাইলে পুনর্লিখন করা হয়।

  4. 4

    কপি করুন এবং পেস্ট করুন

    ক্লিপবোর্ডে পাঠাতে যেকোনো আউটপুট সারির পাশের কপি আইকনে ক্লিক করুন। JSON আউটপুটের জন্য, পুরো ফলাফল ব্লক কপি করুন — সরাসরি আপনার কোডবেস বা API ক্লায়েন্টে ড্রপ করুন।

কোড রিভিউ, রিফ্যাক্টর এবং API প্লাম্বিংয়ের জন্য তৈরি

চারটি সাধারণ পরিস্থিতি যেখানে একবার পেস্ট করে প্রতিটি স্টাইল পাওয়া হাত দিয়ে নাম পরিবর্তনকে হারিয়ে দেয়।

Backend ↔ Frontend সীমানা

Backend আপনাকে দেয় `user_first_name`; frontend চায় `userFirstName`। পেস্ট করুন, কপি করুন, পেস্ট করুন — শেষ। এক ধাপে একটি নমুনা API রেসপন্সের প্রতিটি কী রূপান্তর করতে JSON ব্যাচ মোড ব্যবহার করুন (তারপর ফলাফলের উপর ভিত্তি করে codegen টেমপ্লেট লিখুন)।

ভাষাজুড়ে রিফ্যাক্টরিং

একটি Python লাইব্রেরিকে JavaScript-এ পোর্ট করছেন? Python সোর্সের snake_case আইডেন্টিফায়ার নিন এবং camelCase আউটপুটে চালান। ফলাফল আপনার JS পোর্টে ড্রপ করুন। স্মার্ট টোকেনাইজার `__double_underscore` এবং পিছনের সংখ্যাগুলো না ভেঙে হ্যান্ডেল করে।

ENV vars ↔ রানটাইম কনফিগ

একটি `MY_AWESOME_FEATURE_FLAG` (env var কনভেনশন)-কে `myAwesomeFeatureFlag` (JS ভেরিয়েবল) বা `my_awesome_feature_flag` (Python)-এ রূপান্তর করুন। CONSTANT_CASE / camelCase / snake_case রাউন্ড-ট্রিপ সঠিক।

CSS / ফাইল নামকরণ

BEM kebab-case প্রত্যাশা করে: `.user-card__avatar--large`। একজন ডিজাইনারের কাছ থেকে একটি JS ভেরিয়েবলের নাম পেয়েছেন (`userCardAvatarLarge`)? এক ধাপে রূপান্তর করুন। Tailwind ইউটিলিটি, npm প্যাকেজের নাম, URL স্লাগ এবং CLI ফ্ল্যাগের নামের জন্য উপযোগী — যার সবই kebab-case পছন্দ করে।

100% ব্যক্তিগত — আপনার ব্রাউজারে চলে

আইডেন্টিফায়ার এবং JSON কখনো আপনার ডিভাইস ছাড়ে না। DevTools → Network খুলুন এবং রূপান্তর বা কপির সময় আপনি শূন্য আউটবাউন্ড অনুরোধ দেখতে পাবেন।

  • সব টোকেনাইজেশন, case রূপান্তর এবং JSON ট্রাভার্সাল আপনার মেশিনে JavaScript হিসেবে চলে — পেজ সোর্সে দৃশ্যমান।
  • ক্লিপবোর্ড লেখার জন্য স্ট্যান্ডার্ড navigator.clipboard.writeText API ব্যবহার করা হয়; কিছুই লগ করা হয় না।
  • কোনো লগইন নেই, আইডেন্টিফায়ার মানের উপর কোনো টেলিমেট্রি নেই, কোনো তৃতীয়-পক্ষের API নেই। আমরা শুধু cookie-consent অবস্থার জন্য একটি cookie এবং ভাষা পছন্দের জন্য একটি cookie ব্যবহার করি।

সম্পর্কিত গাইড

নামকরণ কনভেনশন, API ডিজাইন এবং রিফ্যাক্টরিং সম্পর্কে নির্বাচিত পঠন।

প্রায়শই জিজ্ঞাসিত

camelCase, snake_case এবং kebab-case-এর মধ্যে পার্থক্য কী?

এগুলো সবই বহু-শব্দ আইডেন্টিফায়ার (অথবা ফাইলের নাম, URL, CSS ক্লাস) স্পেস ছাড়া লেখার উপায়। camelCase প্রথম শব্দ ছাড়া প্রতিটি শব্দের প্রথম অক্ষরকে বড় হাতের করে (`userFirstName`), JavaScript, Java, Swift-এ ব্যবহৃত হয়। snake_case সব ছোট হাতের করে এবং আন্ডারস্কোর দিয়ে যুক্ত করে (`user_first_name`), Python, Ruby, SQL-এ ব্যবহৃত হয়। kebab-case হাইফেন ব্যবহার করে (`user-first-name`), CSS, HTML, URL স্লাগ, কমান্ড-লাইন ফ্ল্যাগে ব্যবহৃত হয়। PascalCase হলো camelCase যেখানে প্রথম অক্ষরটিও বড় হাতের (`UserFirstName`), অনেক ভাষায় ক্লাস / টাইপ নামের জন্য ব্যবহৃত হয়।

স্মার্ট টোকেনাইজার সংক্ষিপ্ত রূপ কীভাবে হ্যান্ডেল করে?

টোকেনাইজার দুটি সীমানা নিয়ম ব্যবহার করে: lower-to-upper (`a`-এর পরে `B` = বিভক্ত) এবং caps-then-Title (বড় হাতের অক্ষরের একটি সিরিজের পরে একটি ছোট হাতের অক্ষর শেষ বড় হাতের অক্ষরের আগে বিভক্ত হয়)। তাই `XMLHttpRequest` হয়ে যায় `[XML, Http, Request]` → `xml_http_request` / `xmlHttpRequest` / `XmlHttpRequest`। `userIDToken` হয়ে যায় `[user, ID, Token]` → `user_id_token`। এটি বেশিরভাগ ভাষার স্টাইল গাইডের সুপারিশের সাথে মেলে।

JSON-keys ব্যাচ মোড কী করে?

একটি JSON অবজেক্ট পেস্ট করুন — এমনকি গভীরভাবে নেস্টেডও — এবং একটি লক্ষ্য case স্টাইল বাছাই করুন। টুলটি পুরো ট্রি depth-first ঘোরে, প্রতিটি কী রূপান্তর করে (অ্যারের ভেতরের কী সহ), এবং পুনর্নির্মিত JSON আউটপুট দেয়। অ্যারে, টাইপ (number / boolean / null), এবং কাঠামো হুবহু সংরক্ষিত হয়। একই টোকেনাইজারের মাধ্যমে প্রতিটি স্ট্রিং-মান যুক্ত ফিল্ডের বিষয়বস্তু অতিরিক্তভাবে পুনর্লিখন করতে "স্ট্রিং মানগুলোও রূপান্তর করুন" টগল করুন।

আমার প্রকল্পের জন্য কোন কনভেনশন ব্যবহার করা উচিত?

প্রথমে আপনার ভাষার প্রভাবশালী কনভেনশন অনুসরণ করুন, তারপর আপনার টিমের। ডিফল্ট হিসেবে: JS / Java / Swift / Kotlin / Go-এর জন্য camelCase (এক্সপোর্ট করা নাম PascalCase ব্যবহার করে), Python / Ruby / Rust / SQL কলামের জন্য snake_case, CSS ক্লাস / HTML অ্যাট্রিবিউট / URL পাথ / npm প্যাকেজ / CLI ফ্ল্যাগের জন্য kebab-case, এনভায়রনমেন্ট ভেরিয়েবল এবং ভাষা ধ্রুবকের জন্য SCREAMING_SNAKE_CASE। লেয়ারের মধ্যে রূপান্তর করার সময় (snake_case API → camelCase ফ্রন্টএন্ড), একটি একক সীমানা বাছাই করুন এবং সিস্টেমের বাকি অংশ সামঞ্জস্যপূর্ণ রাখুন।

কিছু কি আপনার সার্ভারে পাঠানো হয়?

না। টোকেনাইজেশন, প্রতিটি রূপান্তর এবং JSON-keys ব্যাচ মোড সবই আপনার ব্রাউজারে JavaScript হিসেবে চলে। DevTools → Network খুলুন এবং ব্যবহারের সময় আপনি শূন্য আউটবাউন্ড অনুরোধ দেখতে পাবেন। আমরা cookie-consent অবস্থার জন্য একটি cookie এবং ভাষা পছন্দের জন্য একটি cookie ব্যবহার করি, এটাই।