The-KT یک پروژه دانشجویی بود که حول یک ایدهی ساده شکل گرفت: دادن راهی عملی به فریلنسرها برای ردیابی زمانی که روی پروژهها و وظایف مختلف صرف میکنند.
من به عنوان توسعهدهنده فولاستک کار کردم و فرانتاند و بخش عمدهای از بکاند برنامه را توسعه دادم.
این اپلیکیشن شامل احراز هویت، مدیریت مشتری، و مدیریت پروژه است که ساختار لازم برای مرتبط کردن هر ورودی زمان به کار مشخصی را فراهم میکند. هر پروژه میتواند نرخ ساعتی داشته باشد، به همراه جایی برای گزینههای دیگر محاسبهی فاکتور و گزارش.
برای احراز هویت از مستندات Lucia استفاده کردم، شامل نامکاربری/رمزعبور، OAuth گیتهاب، و فرآیندهای تأیید ایمیل. همچنین محدودسازی نرخ درخواست (rate limiting) را اضافه کردم، با قوانین جداگانه برای درخواستهای عمومی و تلاشهای ورود، به دو روش sliding و fixed bucket.
یک فاکتور از TMetric، که اینجا به عنوان یک چشمانداز از این که نمای فاکتور میتوانست چگونه باشد آورده شده.با اینکه به ویژگیهای فاکتور و گزارشگیری نرسیدم، رابط ردیابی زمان همچنان برایم جالب است. این بخش شامل یک تایمر زنده، انتخاب پروژه و وظیفه، ورودیهای زمان قابل ویرایش، و یک جدول زمانی ۲۴ ساعته (نمودار گانت) برای مشاهدهی کار ثبتشده در طول روز است. همچنین انتخابگرهای تاریخ و زمان فارسی را تنظیم کردم تا رابط کاربری بهطور طبیعی با تقویم فارسی و ورودی تاریخ/زمان محلی کار کند.
این پروژه این فرصت را به من داد که در سراسر استک کار کنم، از مدلسازی دیتابیس با Prisma تا احراز هویت، منطق API، و تعاملهای فرانتاندی که استفادهی عملی از آن را ممکن میکنند.
سایر صفحات مانند صفحهی اصلی (لندینگ)، حریم خصوصی، قوانین، و صفحات خطا به طور کامل انجام شدهاند.




