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

Ora হলো একটি Node.js প্যাকেজ যা টার্মিনাল অ্যাপ্লিকেশনে এনিমেটেড স্পিনার প্রদর্শনের জন্য ডিজাইন করা হয়েছে। এটি npm ব্যবহার করে ইনস্টল করা যায় এবং ES মডিউল হিসেবে ইমপোর্ট করা যায়। ডিফল্ট এক্সপোর্ট টেক্সট বা কনফিগারেশন অপশন গ্রহণ করতে পারে, যার মধ্যে রয়েছে প্রিফিক্স ও সাফিক্স টেক্সট, স্পিনার টাইপ, রঙ, কার্সর দৃশ্যমানতা, ইনডেন্টেশন, অ্যানিমেশন ইন্টারভাল, আউটপুট স্ট্রিম এবং ফোর্সড এনাবলমেন্ট বা সাইলেন্স। Ora ইনস্ট্যান্স মেথড প্রদান করে দেখানো টেক্সট এবং স্টাইলিং পরিবর্তন করার, স্পিনিং অবস্থা পরীক্ষা করার, ম্যানুয়ালি ফ্রেম রেন্ডার করার, থামানোর, ক্লিয়ার করার এবং কাজকে সফল, ব্যর্থ, সতর্কতামূলক বা তথ্যপ্রদানকারী হিসেবে চিহ্নিত করার সুবিধা দেয়। এছাড়াও, এতে oraPromise অন্তর্ভুক্ত আছে যা স্পিনারকে একটি প্রমিস বা প্রমিস-রিটার্নিং ফাংশনের সাথে সংযুক্ত করতে সাহায্য করে, যেখানে সফল ও ব্যর্থ টেক্সট ও প্রতীক কনফিগার করা যায়। এনাবল থাকলে, Ora একটি কনফিগারেবল রাইটেবল স্ট্রিম (সাধারণত stderr) লেখে। স্পিনার সক্রিয় থাকাকালীন এই স্ট্রিমের বার্তা হ্যান্ডেল করতে পারে। স্পিনার আউটপুট স্বয়ংক্রিয়ভাবে শুধুমাত্র উপযুক্ত ইন্টারেক্টিভ পরিবেশে এনাবল হয় এবং CI-এর মতো প্রেক্ষাপটে স্পষ্টভাবে কনফিগার না করলে ডিসেবল থাকে। সাইলেন্ট মোড সব আউটপুট দমন করে, অন্যদিকে ডিসেবল মোড স্পিনার এবং ANSI স্টাইলিং দমন করে কিন্তু টেক্সট আউটপুট করতে পারে। এই প্যাকেজটি মূলত একবারে একটি স্পিনারের জন্য উদ্দিষ্ট। এটি Node.js Worker থ্রেডে চালানোর জন্য ডিজাইন করা নয়, কারণ সেগুলোকে ইন্টারেক্টিভ টার্মিনাল হিসেবে গণ্য করা হয় না। কিছু উইন্ডোজ টার্মিনালে ইউনিকোড সাপোর্ট অনুপলব্ধ বা শনাক্ত করা কঠিন হতে পারে, তাই লাইন স্পিনার বা স্পষ্টভাবে নির্বাচিত স্পিনার ব্যবহার করা প্রয়োজন হতে পারে।