گزارش تولید‌شده توسط Codex

معرفی کامل پروژه TracknSave

وب‌اپلیکیشن مدیریت مالی شخصی برای ثبت، دسته‌بندی، پیگیری و مرور اطلاعات مالی روزمره — مبتنی بر بررسی مستقیم کد.

TracknSaveنام پروژه
۱۴ مه ۲۰۲۶+قدیمی‌ترین شواهد
Laravel · Filamentفناوری اصلی
قابل استفادهوضعیت فعلی
۰۱

نمای کلی پروژه/اپلیکیشن

عنواناطلاعات
نام پروژه/اپلیکیشنTracknSave
تاریخ شروع پروژهتاریخ دقیق از روی Git history قابل تأیید نبود؛ بر اساس قدیمی‌ترین فایل‌های پروژه، نسخه موجود حداقل از ۱۴ مه ۲۰۲۶ وجود داشته است.
پلتفرم هدفوب‌اپلیکیشن مبتنی بر مرورگر با پنل مدیریتی تحت مسیر /admin
وضعیت فعلیکد فعلی نسخه‌ی قابل استفاده‌ای را نشان می‌دهد که ماژول‌های اصلی آن پیاده‌سازی شده‌اند؛ برخی قابلیت‌ها محدود یا فاقد استفاده‌ی عملیاتیِ تأییدشده هستند.

فناوری‌ها و ابزارهای استفاده‌شده

PHP 8.3Laravel 13Filament 4 LivewireBladeEloquent ORM Spatie Laravel SettingsMorilog JalaliDomPDF PhpSpreadsheetViteTailwind CSS 4 PHPUnit

پشتیبانی دیتابیس در سطح پیکربندی: SQLite، MySQL، MariaDB، PostgreSQL، SQL Server.

۰۲

معرفی کوتاه

TracknSave یک وب‌اپلیکیشن برای ثبت، دسته‌بندی، پیگیری و مرور اطلاعات مالی شخصی است. ساختار فعلی برنامه نشان می‌دهد که کاربر می‌تواند حساب‌های مالی مختلف خود را تعریف کند، تراکنش‌های درآمد، هزینه، انتقال و تعدیل را ثبت کند، اشخاص مرتبط را نگه دارد، بدهی و وام را دنبال کند، برای موارد مهم یادآور بسازد، یادداشت ثبت کند و از داده‌های خود نسخه‌ی پشتیبان بگیرد.

این پروژه یک سیستم حسابداری سازمانی پیچیده نیست. شواهد موجود در کد بیشتر به سمت یک ابزار متمرکز بر مدیریت مالی شخصی یا مدیریت مالی سبک در مقیاس کوچک اشاره می‌کند.
۰۳

هدف پروژه

هدف پروژه این است که کاربر بتواند اطلاعات مالی روزمره‌ی خود را در یک محیط یکپارچه نگه دارد و به جای پراکندگی اطلاعات در دفتر، پیام‌رسان، فایل‌های جداگانه یا حافظه‌ی شخصی، همه‌چیز را در یک سامانه‌ی قابل جست‌وجو و قابل گزارش‌گیری مدیریت کند.

  • ثبت منظم درآمدها و هزینه‌ها
  • تفکیک حساب‌های مالی مختلف مانند نقدی، بانکی، کارت اعتباری، کیف پول دیجیتال و پس‌انداز
  • پیگیری ارتباط مالی با اشخاص
  • پیگیری بدهی‌ها و وام‌ها
  • ایجاد یادآور برای رویدادهای مالی
  • مشاهده‌ی گزارش‌های خلاصه و ماهانه
  • نگهداری نسخه‌ی پشتیبان از داده‌ها
۰۴

کاربران هدف

  • افرادی که می‌خواهند دخل‌وخرج شخصی خود را ثبت و مرور کنند
  • کاربرانی که چند حساب مالی مختلف دارند و می‌خواهند مانده هر کدام را جداگانه ببینند
  • کاربرانی که تراکنش‌های خود را با اشخاص مشخصی مرتبط می‌کنند
  • افرادی که می‌خواهند بدون پیچیدگی سیستم‌های حسابداری بزرگ، یک ابزار مالی ساخت‌یافته داشته باشند
توجه: در کد فعلی، شواهد کافی برای ادعای پشتیبانی از همکاری تیمی، نقش‌های سازمانی پیشرفته، یا سناریوهای چندسازمانی دیده نشد.
۰۵

قابلیت‌های اصلی

۵.۱ داشبورد و نمای کلی مالی

  • نمایش خلاصه‌ی مالی ماه جاری (درآمد، هزینه، خالص ماه)؛ نمایش سریع حساب‌ها و مانده‌ها
  • نمایش یادداشت‌های اخیر، یادآورهای نزدیک و تراکنش‌های اخیر
  • ثبت سریع تراکنش از دسته‌بندی‌های پرکاربرد، همراه با شخص، یادداشت، تاریخ، فایل پیوست و ساخت یادآور

۵.۲ مدیریت حساب‌ها

نقدیبانکیکارت اعتباری کیف پول دیجیتالپس‌اندازنوع سفارشی

فیلدهای تخصصی: شماره حساب/کارت، چهار رقم آخر کارت، سقف اعتبار، روز صدور صورتحساب، اضافه‌برداشت، موجودی اولیه، رنگ و مرتب‌سازی. منطق محاسبه‌ی موجودی و اعتبار باقیمانده در لایه‌ی سرویس پیاده‌سازی شده است.

۵.۳ مدیریت تراکنش‌ها

انواع تراکنش
  • هزینه
  • درآمد
  • انتقال بین حساب‌ها
  • تعدیل
فیلدهای هر تراکنش
  • حساب، دسته‌بندی، شخص مرتبط
  • مبلغ، تاریخ، یادداشت کوتاه
  • توضیح، فایل پیوست

برای انتقال، حساب مقصد و کارمزد پشتیبانی می‌شود. عملیات CRUD از طریق TransactionService انجام می‌شود و هم‌زمان مانده‌ی حساب‌ها به‌روزرسانی می‌شود؛ نوع تراکنش در ویرایش ثابت نگه داشته می‌شود (با تست خودکار).

۵.۴ دسته‌بندی‌ها

دسته‌بندی‌ها می‌توانند مخصوص هزینه، مخصوص درآمد یا هر دو باشند؛ ساختار والد/فرزند، رنگ، آیکن، ترتیب نمایش، فعال/غیرفعال و دسترسی سریع نیز پیاده‌سازی شده است.

۵.۵ اشخاص

نگهداری نام، موبایل، ایمیل، نوع رابطه (دوست، خانواده، همکار، مشتری، فروشنده، قرض‌گیرنده، قرض‌دهنده، سایر) و توضیحات؛ برای هر شخص یک صفحه‌ی گزارش تراکنش اختصاصی وجود دارد.

۵.۶ بدهی و وام

هر رکورد می‌تواند به یک شخص و حساب متصل شود و شامل مبلغ کل، مبلغ پرداخت‌شده، سررسید، وضعیت و توضیحات باشد؛ مدل جداگانه DebtPayment برای پرداخت‌های جزئی، با پیگیری وضعیت فعال/جزئی‌تسویه/تسویه‌شده.

۵.۷ یادآورها

اتصال به تراکنش، شخص، حساب یا بدهی؛ الگوهای تکرار: بدون تکرار، روزانه، هفتگی، ماهانه، سالانه؛ وضعیت: در انتظار، انجام‌شده، ردشده.

۵.۸ یادداشت‌ها

عنوان، متن، رنگ پس‌زمینه، حالت سنجاق‌شده و وضعیت فعال؛ ارتباط با شخص، حساب و تراکنش در مدل داده وجود دارد (هرچند در فرم فعلی همه‌ی این ارتباط‌ها به یک اندازه قابل دسترس نیستند).

۵.۹ بانک‌ها و فضاهای مالی

بانک‌ها

نام فارسی/انگلیسی، کد SWIFT، کشور، وضعیت فعال.

فضاهای مالی

دسته‌بندی یا تفکیک منطقی داده‌ها در چند فضای جداگانه، با رنگ، آیکن، وضعیت فعال و ترتیب نمایش.

۵.۱۰ تنظیمات عمومی

از طریق Spatie Laravel Settings: زبان، ارز و نماد، محل نمایش نماد، رقم اعشار، جداکننده هزارگان، قالب نمایش منفی، قالب تاریخ/زمان، نوع تقویم، روز شروع هفته، شروع ماه مالی، رنگ اصلی، نوع نمایش اعداد، فونت برنامه.

۵.۱۱ راهنما و صفحه‌ی درباره

سیستم راهنمای داخلی برای چند بخش برنامه و صفحه «درباره» مجزا وجود دارد.

۰۶

برنامه چگونه کار می‌کند

  • کاربر از طریق پنل وب وارد سیستم می‌شود.
  • ابتدا تنظیمات پایه (زبان، تقویم، ارز، ظاهر) را تنظیم می‌کند.
  • سپس حساب‌ها، دسته‌بندی‌ها، بانک‌ها، اشخاص و فضاهای مالی را تعریف می‌کند.
  • تراکنش‌ها را ثبت می‌کند؛ برنامه مانده‌ی حساب‌ها و خلاصه‌های مالی را محاسبه می‌کند.
  • برای موارد مهم یادداشت و یادآور ثبت می‌کند.
  • گزارش ماهانه و گزارش تراکنش‌های اشخاص را مشاهده می‌کند.
  • از بخش پشتیبان‌گیری برای نگهداری ایمن داده‌ها استفاده می‌کند.

بخش‌ها و صفحه‌های مهم

DashboardAccountsTransactions CategoriesPeopleDebts RemindersNotesBanks Financial SpacesMonthly ReportPerson Transactions Report Export DataBackup & RestoreGeneral SettingsHelp / About

منطق کسب‌وکار مهم

  • به‌روزرسانی مانده‌ی حساب‌ها هنگام ایجاد، ویرایش و حذف تراکنش
  • محاسبه‌ی اعتبار باقی‌مانده برای کارت‌های اعتباری و ظرفیت باقی‌مانده حساب‌های اضافه‌برداشت
  • تبدیل و نمایش تاریخ‌ها با پشتیبانی از تقویم جلالی و میلادی
  • قالب‌بندی اعداد و مبالغ بر اساس تنظیمات کاربر
  • پیشنهاد حساب پیش‌فرض در ثبت سریع بر اساس استفاده‌ی اخیر همان دسته‌بندی
  • ساخت یادآور هم‌زمان با ثبت سریع تراکنش
۰۷

داده‌ها و اطلاعاتی که برنامه مدیریت می‌کند

داده‌های ورودی کاربر
  • اطلاعات حساب‌ها و بانک‌ها
  • دسته‌بندی‌ها، اشخاص، تراکنش‌ها
  • بدهی‌ها و وام‌ها، یادآورها، یادداشت‌ها
  • تنظیمات نمایش، زبان، تقویم و ارز
داده‌های تولیدشده توسط برنامه
  • مانده‌ی فعلی حساب‌ها؛ خلاصه‌ی درآمد و هزینه ماه
  • خالص ماه؛ اعتبار باقیمانده کارت اعتباری
  • گزارش‌های خلاصه و شخصی؛ فایل‌های اکسل خروجی
  • فایل‌های پشتیبان و فایل موقت بازیابی

تراکنش‌ها می‌توانند فایل پیوست داشته باشند؛ این فایل‌ها در دیسک public و پوشه transaction-attachments ذخیره می‌شوند.

۰۸

حریم خصوصی و امنیت

  • ورود به پنل مدیریت فعال است و از سازوکار احراز هویت Laravel/Filament استفاده می‌شود.
  • نشست‌های کاربر به‌صورت database پیکربندی شده‌اند؛ middlewareهای متداول (نشست، کوکی، CSRF، احراز هویت) فعال هستند.
  • فایل‌های پشتیبان در فضای ذخیره‌سازی محلی تولید می‌شوند؛ هیچ ادغامی با سرویس ابری مشاهده نشد.
محدودیت‌ها: در .env.example مقدار SESSION_ENCRYPT=false دیده می‌شود. برای فایل‌های پشتیبان منطق رمزگذاری مستقل مشاهده نشد (بسته‌بندی SQL در ZIP). شواهدی از سیستم نقش/مجوز پیشرفته دیده نشد — هر کاربر احراز هویت‌شده می‌تواند به پنل دسترسی داشته باشد. برای احراز هویت دومرحله‌ای یا استفاده‌ی عملیاتی از app_pin شواهد کافی پیدا نشد.
۰۹

بومی‌سازی و پشتیبانی زبانی

  • زبان فارسی و انگلیسی؛ ترجمه‌ها در resources/lang/fa.json، en.json و fa/validation.php
  • راست‌به‌چپ بودن رابط کاربری فارسی در پنل Filament و CSS عمومی به‌صورت صریح اعمال شده است
  • نمایش اعداد فارسی/لاتین و تنظیمات قالب‌بندی عدد در لایه‌ی پشتیبانی برنامه وجود دارد
  • پشتیبانی از تقویم جلالی و میلادی یکی از قابلیت‌های شاخص این بخش است
۱۰

رابط کاربری و تجربه‌ی کاربری

رابط کاربری بر پایه‌ی Filament Admin Panel ساخته شده و تلاش شده عملیات روزمره با کمترین اصطکاک انجام شود.

  • داشبورد متمرکز با اقدام‌های سریع؛ نمایش کارت‌ها و خلاصه‌های مالی
  • دسترسی سریع به دسته‌بندی‌های پرکاربرد؛ استفاده از رنگ و آیکن برای فهم بهتر
  • فرم‌های مدیریتی ساخت‌یافته؛ راهنمای داخلی برای برخی بخش‌ها
  • پشتیبانی از فونت‌های قابل انتخاب و تم رنگی
۱۱

خروجی، پشتیبان‌گیری، بازیابی و گزارش‌گیری

خروجی داده‌ها

در صفحه‌ی Export Data، خروجی اکسل برای تراکنش‌ها با فیلتر بازه‌ی زمانی و نوع تراکنش پیاده‌سازی شده است. امکان تولید رسید PDF برای یک تراکنش در لایه‌ی سرویس/قالب وجود دارد، اما خروجی PDF عمومی برای فهرست یا بازه‌ی تراکنش‌ها به‌صورت آشکار ارائه نشده است.

پشتیبان‌گیری و بازیابی

  • ایجاد، فهرست، دانلود و حذف نسخه‌های پشتیبان
  • بازیابی از فایل موجود یا بارگذاری فایل خارجی
  • تنظیم مسیر ذخیره‌سازی و ابزار mysqldump؛ تعداد نسخه‌های قابل نگهداری
  • زمان‌بندی پشتیبان‌گیری خودکار و تولید فایل BAT برای ویندوز
توجه: پشتیبان‌گیری و بازیابی به‌طور مشخص بر ابزارهای mysqldump و mysql تکیه دارد؛ این بخش عملاً بیشتر برای محیط‌های MySQL/MariaDB آماده شده است.

گزارش‌ها

گزارش ماهانه، گزارش تراکنش‌های هر شخص، و خلاصه‌های داشبورد — دامنه‌ی گزارش‌گیری فراتر از این موارد توصیف نشده است.

۱۲

خلاصه‌ی معماری فنی

لایهتوضیح
Modelsمدل‌های داده مانند Account، Transaction، Person، Debt، Reminder
Filament Resourcesفرم‌ها، جدول‌ها و عملیات CRUD برای موجودیت‌های اصلی
Filament Pagesصفحه‌های سفارشی: داشبورد، گزارش‌ها، خروجی، پشتیبان‌گیری
Servicesمدیریت تراکنش، محاسبه‌ی مانده، خروجی و پشتیبان‌گیری
Support Classesابزارهای کمکی برای تاریخ، زبان، تنظیمات، نرمال‌سازی متن و راهنما
Settingsنگهداری تنظیمات با spatie/laravel-settings
Viewsقالب‌های Blade برای صفحه‌ها، ویجت‌ها و PDF

منطق مهم بیشتر در سرویس‌ها نگهداری می‌شود تا فرم‌ها و کنترلرها؛ این رویکرد برای نگهداری و توسعه‌ی بعدی مفید است.

۱۳

محدودیت‌ها و موارد عمداً نادیده‌گرفته‌شده

  • سیستم نقش و مجوز پیشرفته؛ احراز هویت دومرحله‌ای
  • رمزگذاری اختصاصی برای فایل‌های پشتیبان؛ همگام‌سازی ابری
  • اپلیکیشن موبایل بومی برای Android یا iOS
  • ماژول تأییدشده‌ی «صندوق خانوادگی» در کد فعلی
  • واردسازی عمومی داده‌ها از فایل‌های خارجی
  • مجموعه‌ی گسترده‌ای از گزارش‌های متنوع فراتر از گزارش ماهانه و اشخاص
۱۴

قابلیت‌های تکمیل‌شده و موارد ناقص

تکمیل‌شده با اطمینان بالا
  • ورود به پنل؛ داشبورد با خلاصه مالی
  • مدیریت حساب‌ها، تراکنش‌ها، دسته‌بندی‌ها، اشخاص
  • مدیریت بدهی، وام، یادآورها، یادداشت‌ها
  • مدیریت بانک‌ها و فضاهای مالی
  • گزارش ماهانه و اشخاص؛ خروجی اکسل
  • رسید PDF در لایه‌ی سرویس؛ پشتیبان‌گیری MySQL
  • بومی‌سازی فارسی/انگلیسی و RTL
ناقص یا نیازمند بررسی بیشتر
  • تاریخ شروع دقیق پروژه از Git قابل تأیید نبود
  • خروجی PDF عمومی در رابط کاربری دیده نشد
  • پشتیبان‌گیری برای دیتابیس‌های غیر MySQL/MariaDB پیاده‌سازی نشده
  • استفاده‌ی واقعی از app_pin تأیید نشد
  • سیستم سطح‌بندی دسترسی پیشرفته مشاهده نشد
۱۵

متن معرفی عمومی و بازاریابی واقع‌گرایانه

TracknSave یک وب‌اپلیکیشن مدیریت مالی شخصی است که به شما کمک می‌کند حساب‌ها، تراکنش‌ها، بدهی‌ها، یادآورها و یادداشت‌های مالی خود را در یک محیط منظم و قابل پیگیری مدیریت کنید. این پروژه برای کاربرانی ساخته شده که می‌خواهند بدون درگیر شدن با پیچیدگی نرم‌افزارهای حسابداری بزرگ، تصویر روشن‌تری از وضعیت مالی روزمره‌ی خود داشته باشند.

در نسخه‌ی فعلی، برنامه امکاناتی مانند ثبت درآمد و هزینه، انتقال بین حساب‌ها، گزارش ماهانه، گزارش تراکنش‌های اشخاص، پشتیبان‌گیری و بازیابی، و پشتیبانی از زبان فارسی و انگلیسی را ارائه می‌دهد.

جمع‌بندی نهایی

TracknSave در وضعیت فعلی یک سامانه‌ی وب قابل استفاده برای مدیریت مالی شخصی است که بخش‌های اصلی مورد نیاز برای ثبت و پیگیری اطلاعات مالی را پوشش می‌دهد. ارزش اصلی آن در یکپارچه کردن داده‌های مالی روزمره، ساده کردن فرایند ثبت اطلاعات، و فراهم کردن دید بهتر نسبت به حساب‌ها، تراکنش‌ها، بدهی‌ها و یادآورها است.

در عین حال، این پروژه هنوز یک محصول با امکانات امنیتی یا تحلیلی بسیار پیشرفته نیست و برخی بخش‌ها دامنه‌ی محدودی دارند. همین شفافیت باعث می‌شود توصیف پروژه دقیق، قابل اعتماد و مناسب انتشار عمومی باقی بماند.