Skip to content

Repository files navigation

True Cost (هزینهٔ واقعی)

Chrome Web Store CI License: MIT

نسخهٔ فعلی / Current version: 2.0.1

نصب از Chrome Web Store / Install from the Chrome Web Store

قیمت یک عدد اسمی است. هزینهٔ واقعی، زمانی از عمر شماست که برای به‌دست‌آوردنش کار کرده‌اید.

True Cost کاری ساده اما رادیکال انجام می‌دهد: قیمت‌های تشخیص‌داده‌شده را همان‌جا، روی صفحهٔ فروشگاه اینترنتی، بر اساس دستمزد ساعتی شما به «ساعت یا روز کار» تبدیل می‌کند. عددی که روی برچسب قیمت می‌بینید، رابطهٔ شما با پول را پنهان می‌کند؛ اما وقتی همان عدد به «۴ ساعت کار» یا «نصف یک روز کاری» ترجمه شود، رابطهٔ واقعی‌تری بین دستمزد، تورم، و قدرت خریدتان آشکار می‌شود؛ دقیقاً همان چیزی که در بحث‌های نابرابری اقتصادی و فاصلهٔ روزافزون بین دستمزد اسمی و هزینهٔ زندگی واقعی، معمولاً پنهان می‌ماند. این افزونه ابزار محاسبه نیست؛ ابزار دیدن است.

Price is a nominal number. True cost is the slice of your life you traded to earn it.

True Cost converts detected prices on supported Iranian shopping websites into the hours, days, or months of work needed to earn that amount, based on your own hourly wage. See the time behind every price before you buy. For example, at an hourly wage of 75,605 Toman (Iran's 1405 statutory minimum), an item priced at 800,000 Toman costs about ten and a half hours of work (10:35).

True Cost is now available on the Chrome Web Store. Install it directly in Chrome, enter your wage, and choose whether to replace detected prices with working time or show the time cost on hover. No True Cost account is required.

The interface is Persian-first. English is available for settings and calculation results, while the popup and manual picker currently contain Persian text. Automatic recognition currently focuses on Toman and Rial; support for currencies such as USD, EUR, and GBP is a roadmap goal, not a current feature. Contributions toward broader currency and language support are welcome.

تصاویر و نمونهٔ عملکرد / Preview & usage example

برای دیدن تصاویر، عنوان هر بخش را باز کنید. / Expand each section to view the images.

معرفی افزونه / Meet True Cost

True Cost: معرفی افزونه، تنظیم دستمزد ساعتی و پشتیبانی از تومان و ریال

پوستر معرفی True Cost و نمای رابط افزونه: دستمزد ساعتی، ساعات کار روزانه و انتخاب شیوهٔ نمایش زمان. پشتیبانی فعلی تشخیص قیمت برای تومان و ریال است.

True Cost product poster and interface preview: hourly wage, working hours per day, and time-display controls. Current price recognition supports Toman and Rial.

نمونهٔ عملکرد در فروشگاه / Price-to-time example

نمونهٔ نمایشی True Cost در صفحه‌ای شبیه دیجی‌کالا: تبدیل قیمت به ۱۷۲۶ ساعت و ۵ دقیقه کار

نمونهٔ نمایشی در موکاپ صفحهٔ دیجی‌کالا: با دستمزد ساعتی ۷۵٬۶۰۵ تومان (حداقل قانونی ۱۴۰۵)، قیمت ۱۳۰٬۵۰۰٬۰۰۰ تومان معادل ۱۷۲۶:۰۵ ساعت کار نمایش داده می‌شود؛ یعنی حدود ۲۱۵ روز کاری ۸ ساعته. تصویر برای نمایش عملکرد افزونه ساخته شده و ثبت قیمت زندهٔ فروشگاه نیست.

Illustrative Digikala-style mockup: at an hourly wage of 75,605 Toman (the 1405 statutory minimum), a price of 130,500,000 Toman becomes 1,726 hours and 5 minutes of work, roughly 215 eight-hour workdays. This image demonstrates the extension's behavior; it is not a live store price capture.

نصب / Installation

نصب از کروم استور (پیشنهادی)

True Cost اکنون در Chrome Web Store منتشر شده است؛ برای نصب معمولی نیازی به دانلود فایل ZIP یا فعال‌کردن Developer mode ندارید.

  1. صفحهٔ True Cost در Chrome Web Store را باز کنید.
  2. روی Add to Chrome و سپس Add extension کلیک کنید.
  3. از منوی افزونه‌های کروم، True Cost را باز کنید؛ برای دسترسی سریع‌تر می‌توانید آیکون آن را پین کنید.
  4. دستمزد ساعتی خود را به تومان وارد کنید و ساعات کاری روزانه و شیوهٔ نمایش زمان را تنظیم کنید.
  5. یکی از فروشگاه‌های پشتیبانی‌شده را باز کنید تا هزینهٔ زمانی قیمت‌های تشخیص‌داده‌شده را ببینید.

Install from the Chrome Web Store (recommended)

  1. Open True Cost on the Chrome Web Store.
  2. Click Add to Chrome, then Add extension.
  3. Open True Cost from Chrome's extensions menu and enter your hourly wage in Toman.
  4. Set your working hours per day and preferred time view, then visit a supported shopping website.

You do not need Developer mode for the store version. You can pin the extension to Chrome's toolbar for quick access.

نصب دستی برای توسعه و آزمایش / Manual installation

اگر می‌خواهید نسخهٔ دانلودی را آزمایش کنید یا در توسعه مشارکت کنید، نصب دستی همچنان در دسترس است:

  1. به صفحهٔ Releases بروید و آخرین نسخه (فایل .zip) را دانلود کنید.
  2. فایل زیپ را از حالت فشرده خارج کنید (Extract).
  3. در کروم به آدرس chrome://extensions بروید.
  4. گزینهٔ Developer mode (حالت توسعه‌دهنده) را فعال کنید.
  5. روی Load unpacked کلیک کنید و پوشهٔ استخراج‌شدهٔ حاوی manifest.json را انتخاب کنید.
  6. افزونه را باز کنید و دستمزد ساعتی خود را وارد کنید.

For development or testing, download and extract a ZIP from Releases, enable Developer mode at chrome://extensions, and use Load unpacked to select the folder containing manifest.json.

سایت‌های پشتیبانی‌شده

سایت وضعیت
digikala.com ✅
torob.com ✅
emalls.ir ✅
divar.ir ✅
technolife.com ✅
tapsi.shop ✅
okala.com ✅
bama.ir ✅
snappfood.ir ✅
snappshop.ir ✅
khodro45.com ✅
shopino.app ✅

جزئیات سلکتور‌ها در data/sites.csv.

تشخیص قیمت به ساختار هر سایت وابسته است و ممکن است همهٔ قیمت‌ها شناسایی نشوند. فعال‌سازی روی سایت‌های دیگر آزمایشی است و سازگاری با همهٔ وب‌سایت‌ها را تضمین نمی‌کند.

Price detection depends on each website's layout and may not recognize every price. Enabling the extension on an additional website is experimental and does not guarantee compatibility.

پایگاه دادهٔ مشارکتی سلکتورها

سلکتورهای CSS هر سایت در فایل data/sites.csv نگه‌داری می‌شوند؛ یک جدول ساده که هرکسی می‌تواند بدون دانش جاوااسکریپت آن را ویرایش و Pull Request بفرستد.

  • وقتی سایتی بازطراحی می‌شود و تشخیص قیمت از کار می‌افتد، هرکسی می‌تواند سلکتور جدید را در همین فایل اصلاح کند.
  • افزونه پس از نصب، هر بار که مرورگر باز می‌شود، و در ادامه هفته‌ای یک‌بار، فایل کوچک data/sites-meta.json را با نسخهٔ فعال خودتان مقایسه می‌کند و فقط اگر نسخهٔ جدیدتری واقعاً منتشر شده باشد، در تنظیمات پیام «به‌روزرسانی موجود است» نمایش می‌دهد؛ سلکتورهای فعال شما هرگز بدون تأیید خودتان جایگزین نمی‌شوند و اگر نسخهٔ جدیدی وجود نداشته باشد، هیچ هشداری هم نشان داده نمی‌شود.
  • دیتاست پیشنهادی حداقل دستمزد هم به همین شکل در data/wage-dataset.json مشارکتی نگه‌داری می‌شود.

جزئیات ستون‌ها و روند کار در CONTRIBUTING.md.

حالت‌های نمایش زمان / Time views

سه حالت برای نمایش هزینهٔ زمانی قیمت‌ها دارید و از پاپ‌آپ افزونه می‌توانید بین آن‌ها جابه‌جا شوید:

  • ساعت (پیش‌فرض): هزینه به‌صورت ساعت و دقیقهٔ کار، مثلاً «۱۳۲:۱۶ ساعت کار».
  • روز: هر «روز» یعنی یک روز کاری به‌طول «میزان ساعت کار در روز»ای که خودتان تنظیم کرده‌اید (پیش‌فرض ۸ ساعت)، و باقی‌مانده هم به ساعتِ کاری حساب می‌شود، نه ساعتِ شبانه‌روز. مثلاً ۱۲ ساعت کار با روز ۸ ساعته «۱ روز و ۴ ساعت» می‌شود؛ و اگر طول روز کاری‌تان را ۶ ساعت تنظیم کنید، همان ۱۲ ساعت «۲ روز و ۰ ساعت» نمایش داده می‌شود.
  • ماه: هر «ماه» ۳۰ روز کاری است؛ با روز ۸ ساعته یعنی ۲۴۰ ساعت کار. مثلاً ۲۵۲ ساعت کار «۱ ماه و ۱ روز و ۴ ساعت» نمایش داده می‌شود.

Time views. Pick one of three views in the popup. Hours (default) shows work time as H:MM (e.g. "132:16 hrs work"). Days counts one day as your configured workday length (default 8 hours) and any leftover in work hours, not 24-hour clock hours: 12 hours of work on an 8-hour workday shows "1 day and 4 hours", and with a 6-hour workday it shows "2 days and 0 hours". Months counts one month as 30 workdays (240 work hours by default): 252 hours of work shows "1 month, 1 day and 4 hours".

امکانات / Features

  • محاسبهٔ شخصی‌سازی‌شده: تنظیم دستمزد ساعتی و ساعات کار روزانه برای نمایش هزینه به ساعت، روز یا ماه کار.
  • دو حالت نمایش: جایگزینی قیمت‌های تشخیص‌داده‌شده با زمان کار، یا حفظ قیمت اصلی و نمایش هزینهٔ زمانی هنگام نگه‌داشتن نشانگر روی آن.
  • تشخیص قیمت ایرانی: پشتیبانی از تومان و ریال و ارقام فارسی و انگلیسی؛ تشخیص از سه مسیر سلکتور اختصاصی سایت، داده‌های ساختاریافتهٔ JSON-LD، و اسکن عمومی متن قیمت.
  • حالت دستی: انتخاب عنصر قیمت روی صفحه و ذخیرهٔ آن به‌عنوان سلکتور شخصی، یا پیشنهاد آن به مخزن از طریق فرم آمادهٔ GitHub Issue.
  • فعال‌سازی سایت جدید: روی سایت‌های خارج از فهرست رسمی هم می‌توانید افزونه را فعال کنید؛ دکمهٔ «فعال‌سازی روی این سایت» پس از تأیید دسترسی توسط شما، ابزار را برای همان دامنه فعال می‌کند.
  • زبان فارسی و انگلیسی: تنظیمات و نتایج محاسبات به هر دو زبان در دسترس‌اند؛ پاپ‌آپ و ابزار انتخاب دستی فعلاً متن‌های فارسی دارند.
  • کنترل سریع: توقف و فعال‌سازی دوبارهٔ افزونه از پاپ‌آپ.
  • متن‌باز و بدون حساب کاربری: بدون تبلیغات یا ردیابی تحلیلی؛ محاسبهٔ قیمت‌ها در مرورگر انجام می‌شود.

In short: personalized wage-based calculations, hours/days/months views, inline or hover display, Toman/Rial recognition, manual price selection, optional per-site access, Persian/English settings and results, and quick pause/resume controls.

برآوردها به دستمزد واردشده و قیمت‌های تشخیص‌داده‌شده وابسته‌اند؛ هدف، درک بهتر هزینهٔ خرید است، نه ارائهٔ توصیهٔ مالی.

فونت

رابط کاربری این افزونه از فونت زیبا و کاملاً رایگان وزیرمتن (Vazirmatn) استفاده می‌کند؛ اثری از مرحوم صابر راستی‌کردار عزیز، که یکی از باکیفیت‌ترین و پرکاربردترین فونت‌های فارسی متن‌باز را برای جامعهٔ فارسی‌زبان به میراث گذاشت. یادش گرامی.

حریم خصوصی و امنیت / Privacy and security

  • محاسبهٔ هزینهٔ زمانی در مرورگر شما انجام می‌شود. افزونه تبلیغات یا ردیابی تحلیلی ندارد و به حساب کاربری True Cost نیاز ندارد.
  • تنظیمات و سلکتورهای شخصی با استفاده از فضای ذخیره‌سازی کروم نگه‌داری می‌شوند. داده‌های chrome.storage.sync در صورت فعال‌بودن Chrome Sync ممکن است بین مرورگرهای شما همگام شوند؛ کش‌ها در chrome.storage.local ذخیره می‌شوند.
  • افزونه دیتاست‌های عمومی دستمزد و تشخیص سایت را از گیت‌هاب دریافت می‌کند و داده‌های جایگزین همراه افزونه نیز دارد.
  • اگر خودتان از ابزار انتخاب دستی، پیشنهاد یک سایت را انتخاب کنید، نشانی صفحه، متن نمونهٔ انتخاب‌شده، واحد پول و سلکتور برای آماده‌کردن فرم Issue به گیت‌هاب ارسال می‌شوند. انتشار Issue به اقدام جداگانهٔ شما در گیت‌هاب نیاز دارد.
  • دسترسی به سایت‌های خارج از فهرست رسمی فقط پس از تأیید خود شما (دکمهٔ «فعال‌سازی روی این سایت») و فقط برای همان دامنه داده می‌شود و هر زمان از تنظیمات مرورگر قابل لغو است.
  • جزئیات بیشتر در PRIVACY.md و SECURITY.md.

Calculations run in your browser, with no advertising, analytics tracking, or True Cost account. Preferences use Chrome storage and may sync when Chrome Sync is enabled. The extension fetches public datasets from GitHub. If you explicitly choose to suggest a site, the selected URL, sample text, currency, and detection rule are sent to GitHub to prefill an issue form; publishing it is a separate action.

توسعه

git clone https://github.com/alirezach/TrueCost.git
cd TrueCost
npm install
npm test          # تست‌های واحد (vitest)
npm run crawl     # کرال مجدد سایت‌های زنده و مقایسهٔ سلکتورها (ابزار دولوپری)

راهنمای کامل مشارکت در CONTRIBUTING.md.

نقشه راه / Roadmap

  • افزودن واحدهای پولی غیرایرانی (دلار، یورو، پوند و...) به موتور تشخیص عمومی، برای استفاده روی فروشگاه‌های غیرایرانی. Adding non-Iranian currencies (USD, EUR, GBP, etc.) to the generic detection engine, so the extension becomes usable on non-Iranian shops too.
  • بومی‌سازی کامل رابط کاربری به انگلیسی (chrome.i18n) به‌جای متن‌های ثابت دوزبانه. Full English localization via chrome.i18n.
  • پشتیبانی از Firefox و Edge. Firefox/Edge support.

اگر از کشوری غیر از ایران هستید و دوست دارید در توسعهٔ پشتیبانی چندارزی یا بومی‌سازی انگلیسی مشارکت کنید، خوشحال می‌شویم؛ به CONTRIBUTING.md مراجعه کنید.

ایده و تاریخچه

پشت هر برچسب قیمتی یک عدد پنهان وجود دارد: اینکه باید چند ساعت از زندگی‌تان را برای آن معامله کنید. True Cost همین عدد را آشکار می‌کند.

این پروژه ادامه و بازنویسی یک ایدهٔ قدیمی‌تر است:

مجوز

MIT

About

True Cost exposes the human cost behind price tags on Iranian shopping sites, showing how many hours or days you must work to afford a purchase.

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages