UltKit
ছবি11
PDF13
ডকুমেন্ট ও ডেটা7
ভিডিও6
অডিও4
আরও টুল22

YAML থেকে JSON কনভার্টার

YAML কনফিগারেশন, OpenAPI স্পেক ও CI ফাইলকে এমন JSON-এ রূপান্তর করুন যা যেকোনো পার্সার, API বা স্কিমা ভ্যালিডেটর পড়তে পারে। .yaml বা .yml ফাইল আপলোড করুন আর ইনডেন্ট করা JSON ডাউনলোড করুন।

ডেটা কনভার্টার

অথবা CSV, TSV, TXT … ফাইল এখানে ড্রop করুন ·

প্রতি ফাইল সর্বোচ্চ 95 MB· সর্বোচ্চ 20টি ফাইল· 30 মিনিট পরে মুছে ফেলা হয়

আউটপুট

ফাইল আমাদের সার্ভারে প্রসেস করা হয় এবং 30 মিনিট পরে মুছে ফেলা হয়।

এই টুল কীভাবে ব্যবহার করবেন

  1. 1

    YAML ফাইল আপলোড করুন

    একবারে সর্বোচ্চ ২০টি এবং প্রতিটি ৯৫ MB পর্যন্ত .yaml বা .yml ফাইল যোগ করুন। মূল নাম অপরিবর্তিত রাখুন; JSON ফাইলগুলো একই নামে, শুধু নতুন এক্সটেনশনসহ তৈরি হবে।

  2. 2

    ইনডেন্টেড বা কমপ্যাক্ট বেছে নিন

    সাজানো ফরম্যাটে লিখুন চালু থাকে, ফলে পড়া ও কোড রিভিউয়ের সুবিধার জন্য JSON ইনডেন্ট করা হয়। রিকোয়েস্ট বডিতে পেস্ট করার জন্য এক লাইনের ফাইল চাইলে উন্নত সেটিংস-এ গিয়ে এটি বন্ধ করুন।

  3. 3

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

    JSON-এ কনভার্ট করুন চাপুন, ডাউনলোড করুন, তারপর ফাইলটি API, ভ্যালিডেটর বা যে স্ক্রিপ্টের জন্য দরকার তাতে দিন।

ডেভেলপাররা কেন YAML থেকে JSON কনভার্ট করেন

YAML মানুষের জন্য লেখা: ব্রেসের বদলে ইনডেন্টেশন, কমেন্ট, বেশিরভাগ স্ট্রিংয়ে কোটেশন নেই। তাই টিমগুলো হাতে এডিট করে এমন Kubernetes ম্যানিফেস্ট, GitHub Actions ওয়ার্কফ্লো, Docker Compose ফাইল ও OpenAPI স্পেক YAML-এ থাকে। JSON লেখা হয় প্রোগ্রামের জন্য। প্রতিটি ভাষার স্ট্যান্ডার্ড লাইব্রেরিতে JSON পার্সার আছে, ব্রাউজার নিজেই এটি পার্স করে, আর বেশিরভাগ HTTP API অন্য কিছু নেয় না।

তাই রূপান্তর হয় দুই প্রান্তের সীমানায়। প্ল্যাটফর্ম ইঞ্জিনিয়ার ম্যানিফেস্ট jq-তে পাঠান, যা শুধু JSON পড়ে। ব্যাকএন্ড ডেভেলপার OpenAPI স্পেক এমন কোড জেনারেটরে দেন যার JSON লাগে। টেস্টার YAML-এ লেখা ফিক্সচার ডেটা JavaScript টেস্ট স্যুটে লোড করেন। প্রতিটি ক্ষেত্রে YAML-ই মূল সোর্স, আর JSON হলো বিল্ড আর্টিফ্যাক্ট। কনফিগের বদলে ফিড বা এক্সপোর্টের পুরো ডিরেক্টরি হলে XML থেকে JSON পুরোনো মার্কআপ ফরম্যাটটি একইভাবে সামলায়।

YAML ও JSON কীভাবে একসাথে বেড়ে উঠেছে

ক্লার্ক ইভান্স প্রথম YAML প্রস্তাব করেন
2001
YAML 1.2 JSON-কে YAML-এর সাবসেট করে
2009
RFC 8259, বর্তমান JSON স্ট্যান্ডার্ড
2017
YAML 1.2.2 সংস্করণ প্রকাশিত
2021

শুধু YAML-এ থাকা ফিচারগুলো JSON-এ গিয়ে কী হয়

অ্যাংকর (&defaults) ও তার অ্যালিয়াস (*defaults) দিয়ে YAML একটি ব্লক পুনরায় ব্যবহার করে। JSON-এ রেফারেন্স নেই, তাই প্রতিটি অ্যালিয়াসের জায়গায় অ্যাংকর করা ব্লকের পূর্ণ কপি বসে।

  • JSON, YAML-এর চেয়ে উল্লেখযোগ্যভাবে লম্বা হতে পারে
  • মার্জ কী (<<: *defaults) একইভাবে বিস্তারিত হয়
ছোট একটি YAML কনফিগ, সাজানো JSON-এ
{
  "service": "billing",
  "replicas": 3,
  "ports": [8080, 9090],
  "env": {
    "LOG_LEVEL": "info",
    "REGION": "NO"
  }
}

YAML ও JSON ফরম্যাটের তথ্য

YAML

YAML

YAML ("YAML Ain't Markup Language") হলো মানুষের জন্য সহজ একটি ডেটা ফরম্যাট, যা প্রথম প্রকাশিত হয় ২০০১ সালে। এটি ব্র্যাকেটের বদলে ইনডেন্টেশন ব্যবহার করে, কমেন্ট সাপোর্ট করে এবং JSON-এর সুপারসেট। Docker Compose, Kubernetes, GitHub Actions ও অনেক অ্যাপ্লিকেশনের কনফিগারেশনে এটি বহুল ব্যবহৃত। হোয়াইটস্পেসের উপর নির্ভরশীল হওয়ায় একটি ভুল স্পেসেই এটি ভেঙে যেতে পারে, আর "no" বা তারিখের মতো কিছু মান অপ্রত্যাশিতভাবে ব্যাখ্যা হতে পারে।

কম্প্রেশন
–
স্বচ্ছতা (ট্রান্সপারেন্সি)
–
অ্যানিমেশন
–
প্রবর্তনের সাল
2001 · Clark Evans, Ingy döt Net, Oren Ben-Kiki
YAML কনভার্টার

JSON

জাভাস্ক্রিপ্ট অবজেক্ট নোটেশন

JSON হলো কাঠামোবদ্ধ ডেটার জন্য হালকা টেক্সট ফরম্যাট, যা ২০০০-এর দশকের শুরুতে Douglas Crockford জনপ্রিয় করেন এবং RFC 8259 ও ECMA-404 হিসেবে মানসম্মত হয়। সহজ ও পাঠযোগ্য সিনট্যাক্সে এটি অবজেক্ট, অ্যারে, স্ট্রিং, সংখ্যা, বুলিয়ান ও null প্রকাশ করে। প্রায় সব প্রোগ্রামিং ভাষায় ওয়েব API, কনফিগারেশন ফাইল ও অ্যাপের মধ্যে ডেটা আদান-প্রদানের ডিফল্ট ফরম্যাট এটি। এতে কমেন্ট, তারিখ বা স্কিমা বিল্ট-ইন নেই, এবং বড় নেস্টেড ফাইল ভিউয়ার ছাড়া পড়া কঠিন।

কম্প্রেশন
–
স্বচ্ছতা (ট্রান্সপারেন্সি)
–
অ্যানিমেশন
–
প্রবর্তনের সাল
2001 · Douglas Crockford
JSON কনভার্টার

মানুষের জন্য লেখা কনফিগ বা স্পেক যখন মেশিনে দিতে হয়, তখন YAML থেকে JSON করা হয়: যেমন API রিকোয়েস্ট, স্কিমা ভ্যালিডেটর বা YAML পার্সার নেই এমন টুলে।

YAML থেকে JSON কনভার্টার: সাধারণ প্রশ্ন

একই ডেটা থাকলে YAML থেকে JSON কনভার্ট করার দরকার কেন?

কারণ অনেক টুল শুধু একটি ফরম্যাটই পার্স করতে পারে। প্রতিটি প্রোগ্রামিং ভাষা ও ব্রাউজারে JSON রিডার থাকে, কিন্তু YAML-এর জন্য বাড়তি লাইব্রেরি লাগে। REST API-এর রিকোয়েস্ট বডি, JSON Schema ভ্যালিডেটর, jq এবং package.json বা ব্রাউজার এক্সটেনশনের manifest.json-এর মতো ফাইল সবই JSON আশা করে।

আমার YAML কমেন্টগুলোর কী হয়?

কমেন্ট বাদ পড়ে যায়। RFC 8259-এ JSON-এর কোনো কমেন্ট সিনট্যাক্স নেই, তাই # দিয়ে শুরু হওয়া লাইনের কোনো জায়গা থাকে না। YAML ফাইলকে মন্তব্যসহ মূল সোর্স হিসেবে রাখুন এবং JSON-কে এমন একটি তৈরি করা কপি ভাবুন যা যেকোনো সময় আবার বানানো যায়।

NO বা off কেন false হয়ে গেল?

YAML 1.1 অনুসরণকারী পার্সার yes, no, on ও off-কে বুলিয়ান হিসেবে পড়ে, তাই নরওয়ের কান্ট্রি কোড NO হয়ে যেতে পারে false। YAML 1.2 বুলিয়ান শুধু true ও false-এ সীমাবদ্ধ রাখে, কিন্তু সব টুল তা মানে না। এমন মান YAML-এ "NO" লিখে কোট করুন, তাহলে JSON-এ সেগুলো স্ট্রিংই থাকবে।

YAML-এ লেখা CloudFormation টেমপ্লেট কি কনভার্ট করা যায়?

AWS CloudFormation দুটি ফরম্যাটই গ্রহণ করে, কিন্তু !Ref ও !GetAtt-এর মতো সংক্ষিপ্ত ট্যাগ শুধু YAML-এ আছে। JSON টেমপ্লেটে এগুলো পূর্ণ ফাংশন হিসেবে লিখতে হয়, যেমন {"Ref": "MyBucket"} বা {"Fn::GetAtt": [...]}। JSON টেমপ্লেট বৈধ রাখতে কনভার্টের আগে সংক্ষিপ্ত ট্যাগগুলো দীর্ঘ রূপে লিখে নিন।

উল্টো দিকে, অর্থাৎ JSON থেকে YAML কীভাবে করব?

JSON থেকে YAML ব্যবহার করুন। API রেসপন্স বা তৈরি করা ফাইলকে রিপোজিটরির পড়ার উপযোগী কনফিগ ফাইলে বদলাতে সাধারণত এই দিকটিই লাগে।