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

মিনি গ্রাফ কার্ড হলো হোম অ্যাসিস্ট্যান্টের জন্য একটি কাস্টম লাভলেস কার্ড, যা সেন্সর ও বাইনারি_সেন্সর এনটিটির বর্তমান অবস্থা এবং তাদের ইতিহাসের লাইন বা বার গ্রাফ একসাথে প্রদর্শন করে। এটি HACS-এর মাধ্যমে, ম্যানুয়ালি বান্ডেলটি config/www-এ কপি করে, অথবা CLI ডাউনলোডের মাধ্যমে ইনস্টল করা যায়, তারপর লাভলেসে একটি JavaScript মডিউল রিসোর্স হিসেবে রেফারেন্স করা হয়। কার্ডটি YAML-এ কনফিগার করা হয়। আবশ্যক অপশন হলো type (custom:mini-graph-card) এবং entities, যা সেন্সর এনটিটির একটি তালিকা। প্রতিটি এনটিটি একটি সাধারণ এনটিটি আইডি হতে পারে, অথবা attribute, name, color, unit, aggregate_func, show_state, show_legend_state, show_indicator, show_graph, show_line, show_fill, show_points, show_legend, state_adaptive_color, y_axis, fixed_value এবং smoothing-এর মতো অপশনসহ একটি অবজেক্ট হতে পারে। কার্ড-লেভেল অপশনের মধ্যে রয়েছে icon, icon_image, name, unit, tap_action, group, hours_to_show, points_per_hour, aggregate_func, group_by, update_interval, cache, show, animate, height, bar_spacing, line_width, line_color, color_thresholds, color_thresholds_transition, decimals, hour24, font_size, font_size_header, align_header, align_icon, align_state, lower_bound, upper_bound, min_bound_range, সেকেন্ডারি বাউন্ড, smoothing, state_map, value_factor এবং logarithmic। show তালিকা UI এলিমেন্ট নিয়ন্ত্রণ করে: name, icon, state, graph (line, bar বা false), fill, points, legend, average, extrema, labels, labels_secondary, name_adaptive_color, icon_adaptive_color এবং loading_indicator। অ্যাগ্রিগেট ফাংশনের মধ্যে রয়েছে avg, median, min, max, first, last, sum, delta এবং diff। ডেটা interval, date বা hour অনুযায়ী গ্রুপ করা যায়। কালার থ্রেশহোল্ড স্মুথ বা হার্ড ট্রানজিশন এবং মধ্যবর্তী স্টপ ভ্যালুর ইন্টারপোলেশন সমর্থন করে। নন-নিউমেরিক স্টেট state_map-এর মাধ্যমে লেবেলে ম্যাপ করা যায়, এবং নেস্টেড ডিকশনারি বা লিস্টের অ্যাট্রিবিউট ডটেড পাথ দিয়ে অ্যাক্সেস করা যায়। উদাহরণগুলোর মধ্যে রয়েছে একক-এনটিটি কার্ড, বিকল্প স্টাইল, একাধিক এনটিটি, বার চার্ট, সাপ্তাহিক ইতিহাস, শুধু-গ্রাফ কার্ড, হরাইজন্টাল স্ট্যাক, ডায়নামিক লাইন রঙ, সেকেন্ডারি y-অক্ষ, তারিখ অনুযায়ী গ্রুপিং, অ্যাগ্রিগেশন ফাংশন, বাইনারি সেন্সর এবং অতিরিক্ত শুধু-স্টেট এনটিটি দেখানো। থিম ভেরিয়েবল mcg-title-letter-spacing এবং mcg-title-font-weight অ্যাপিয়ারেন্স কাস্টমাইজেশনের সুযোগ দেয়। ডেভেলপমেন্টের জন্য nodejs এবং npm প্রয়োজন, সাথে npm run build এবং npm run watch স্ক্রিপ্ট রয়েছে।