প্রকল্প সম্পর্কে

Pts হলো ভিজ্যুয়ালাইজেশন ও ক্রিয়েটিভ কোডিংয়ের জন্য একটি TypeScript এবং JavaScript লাইব্রেরি। এটি ক্যানভাসে ড্রয়িং ও অ্যানিমেশনের প্রিমিটিভ সরবরাহ করে এবং ব্রাউজার স্ক্রিপ্ট ও npm প্যাকেজ উভয় আকারেই বিতরণ করা হয়। ব্যবহারের বিকল্প - ব্রাউজার স্ক্রিপ্ট: dist ডিরেক্টরি থেকে pts.js বা pts.min.js ডাউনলোড করুন, অথবা cdnjs, jsDelivr বা unpkg-এর মতো CDN থেকে লোড করুন। ক্লাসিক স্ক্রিপ্টটি লাইব্রেরিটিকে globalThis.Pts হিসেবে উন্মুক্ত করে। - প্যাকেজ: npm install pts দিয়ে ইনস্টল করুন। লাইব্রেরিটি ESM-প্রধান এবং একটি CommonJS সামঞ্জস্য এন্ট্রিও প্রদান করে, তাই import { CanvasSpace, Group, Line, Pt } from "pts" দিয়ে ইমপোর্ট করা যায় বা require("pts") দিয়ে রিকোয়ার করা যায়। README-তে তালিকাভুক্ত স্টার্টার প্রকল্প ও ইন্টিগ্রেশনগুলোর মধ্যে রয়েছে pts-starter-kit, pts-react-example এবং react-pts-canvas npm প্যাকেজ। গাইড ও ডেমো প্রকল্প সাইটে পাওয়া যায়। ডেভেলপমেন্ট রক্ষণাবেক্ষণকৃত বিল্ড পরিবেশ হলো Node 24 লাইনে Node 24.18 বা নতুনতর, এবং প্রকাশিত লাইব্রেরিটি বর্তমান Node 20 ও 22 রিলিজেও পরীক্ষা করা হয়। সেটআপে pnpm install --frozen-lockfile, pnpm exec playwright install chromium এবং pnpm check ব্যবহার করা হয়। পৃথক কমান্ডগুলোর মধ্যে রয়েছে build, typecheck, test, test:browser, test:integrations, check:package, format এবং format:watch। pnpm check কমান্ডটি ফরম্যাটিং, লিন্টিং, টাইপ, ইউনিট টেস্ট, ডিটারমিনিস্টিক ডকুমেন্টেশন, প্রকৃত ব্রাউজারে ডকুমেন্টেশন ও বান্ডল আচরণ, পুনরুৎপাদনযোগ্য আর্টিফ্যাক্ট, প্যাক করা প্যাকেজ, ESM ও CommonJS রেজোলিউশন, ডিক্লারেশন এবং ট্রি-শেকিং যাচাই করে। এর packed-package ইন্টিগ্রেশন স্যুটটি test/integrations-এর অধীনে রক্ষণাবেক্ষণকৃত React, Vue, skia-canvas এবং একক-ফাইল vanilla ফিক্সচারও বিল্ড ও চালায়। Prettier রিপোজিটরির ফরম্যাটিং নিয়ম নির্ধারণ করে। একবার pnpm format চালানো, বা pnpm format:watch চালু রাখা, পরিবর্তনের সাথে সাথে রক্ষণাবেক্ষণকৃত সোর্স ফাইলগুলো পুনরায় ফরম্যাট করে। প্রস্তাবিত VS Code এক্সটেনশন ও ওয়ার্কস্পেস সেটিংস সেভ করার সময়ও Prettier সক্রিয় করে, অন্যদিকে pnpm check CI-তে আনফরম্যাটেড পরিবর্তন প্রত্যাখ্যান করে। ডকুমেন্টেশন জেনারেশন ডকুমেন্টেশন জেনারেটরটি স্পষ্ট সোর্স এন্ট্রি পয়েন্ট থেকে কাস্টম স্ট্যাটিক ডকুমেন্টেশন JSON পুনর্নির্মাণ করতে TypeDoc-এর Node API ব্যবহার করে। এটি docs.md, guide.md এবং llms.txt-ও তৈরি করে, যা এজেন্ট ও অন্যান্য ক্লায়েন্টের জন্য যারা ডকুমেন্টেশন SPA নেভিগেট করতে পারে না। জেনারেট করা ডকুমেন্টেশন চেক-ইন করা থাকে; pnpm check:docs এটি মেমরিতে পুনরুৎপাদন করে, পুরনো বা অতিরিক্ত ফাইল রিপোর্ট করে এবং Chromium-এ নেভিগেশন, সার্চ, অ্যাঙ্কর ও রেসপন্সিভ লেআউট পরীক্ষা করে। অবদান ও লাইসেন্স ইস্যু ও ছোট পুল রিকোয়েস্ট স্বাগত; বড় পরিবর্তনের ক্ষেত্রে রক্ষণাবেক্ষণকারীর সাথে আলোচনা দিয়ে শুরু করা উচিত। প্রকল্পটি Apache License 2.0-এর অধীনে লাইসেন্সকৃত, কপিরাইট 2017-বর্তমান William Ngan এবং অবদানকারীরা।