Public API

তাজবীদ লিপি API

আপনার যেকোনো ওয়েবসাইট, অ্যাপ বা স্ক্রিপ্ট থেকে এই API কল করে আরবি টেক্সটকে বাংলা ফোনেটিক লিপিতে রূপান্তর করুন। সম্পূর্ণ ফ্রি, কোনো API key দরকার নেই, CORS সক্ষম।

১. এন্ডপয়েন্টস

POSThttps://tajweedlipi.com/api/convert

JSON body: { "text": "আরবি টেক্সট" }

GEThttps://tajweedlipi.com/api/convert?text=...

ছোট টেক্সট/টেস্টিংয়ের জন্য সুবিধাজনক। URL-encoded করুন।

OPTIONShttps://tajweedlipi.com/api/convert

CORS preflight — browsers automatically handle this.

২. উদাহরণ

curl (POST)

curl -X POST 'https://tajweedlipi.com/api/convert' \
  -H 'Content-Type: application/json' \
  --data '{"text": "بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ"}'

curl (GET)

curl 'https://tajweedlipi.com/api/convert?text=%D8%A8%D9%90%D8%B3%D9%92%D9%85%D9%90%20%D8%A7%D9%84%D9%84%D9%8E%D9%91%D9%87%D9%90%20%D8%A7%D9%84%D8%B1%D9%8E%D9%91%D8%AD%D9%92%D9%85%D9%8E%D9%B0%D9%86%D9%90%20%D8%A7%D9%84%D8%B1%D9%8E%D9%91%D8%AD%D9%90%D9%8A%D9%85%D9%90'

JavaScript / TypeScript

// Browser or Node 18+
const res = await fetch("https://tajweedlipi.com/api/convert", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({ text: "بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ" }),
});
const data = await res.json();
console.log(data.output);
// → বিছমিল্‌ লাহির্‌ রহমানির্‌ রহিম

Python

import requests

r = requests.post(
    "https://tajweedlipi.com/api/convert",
    json={"text": "بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ"},
)
print(r.json()["output"])

৩. Response ফরম্যাট

উভয় POST এবং GET একই JSON return করে:

{
  "input": "بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ",
  "output": "বিছমিল্‌ লাহির্‌ রহমানির্‌ রহিম",
  "tokens": [
    {
      "arabic": "بِ",
      "bengali": "বি",
      "rule": "none",
      "fontStyle": "normal",
      "underline": false
    },
    {
      "arabic": "مَٰ",
      "bengali": "মা",
      "rule": "madd",
      "fontStyle": "normal",
      "underline": true,
      "ruleDescription": "মাদ্দ — খাড়া যবর, ১ আলিফ টান"
    }
  ],
  "rulesApplied": ["madd", "waqf"]
}
  • input — মূল আরবি টেক্সট
  • output — সম্পূর্ণ বাংলা ফোনেটিক স্ট্রিং
  • tokens[] — প্রতিটি অংশ আলাদা — UI styling-এর জন্য
  • rulesApplied[] — যেসব তাজবীদ রুল লেগেছে

৪. তাজবীদ রুলস

টোকেনের rule ফিল্ডে এই মানগুলো আসতে পারে:

  • ikhfa — ইখফা (নুন/তানউইন + ১৫ অক্ষর)
  • idgham — ইদগাম (নুন/তানউইন + ي ن م و ل ر)
  • iqlab — ইক্বলাব (নুন/তানউইন + ب)
  • izhar — ইযহার (নুন/তানউইন + ء ه ع ح غ خ)
  • ghunnah — গুন্নাহ (نّ مّ)
  • madd — মাদ্দ (১/৩/৪ আলিফ টান)
  • qalqalah — ক্বলক্বলা (ق ط ب ج د + সুকূন)
  • tafkheem — তাফখীম (خ ص ض غ ط ظ ق ر)
  • waqf — ওয়াকফ (থামার চিহ্ন)
  • none — কোনো বিশেষ রুল নেই

৫. এরর কোড

Statusকারণ
200সফল রূপান্তর
400Invalid JSON, খালি টেক্সট, অথবা ১০,০০০ অক্ষরের বেশি
500সার্ভার এরর (engine exception)

৬. সীমাবদ্ধতা

  • সর্বোচ্চ ১০,০০০ অক্ষর প্রতি request
  • কোনো API key নেই, তবে অপব্যবহার রোধে IP-ভিত্তিক rate-limit ভবিষ্যতে আসতে পারে
  • বর্তমান accuracy ~৭০% — engine উন্নয়নাধীন। Home page-এ নিজের verse দিয়ে test করুন
  • রিপোর্ট/ফিডব্যাক: GitHub Issues

এই API ফ্রি ও ওপেন। আপনার প্রজেক্টে ব্যবহার করুন এবং সম্ভব হলে credit দিন।