تفاصيل العمل

Trackify — واجهة برمجية آمنة لإدارة المهام (Java/Spring Boot)

نظام خلفي (Backend) جاهز للإنتاج لإدارة المهام وقوائم المهام، مبني على أساس متين من المصادقة الآمنة وواجهة REST API نظيفة وموثقة بالكامل — بالضبط نوع الأساس الذي يمكن أن يُبنى عليه منتج حقيقي متعدد المستخدمين.

آلية العمل

يتيح Trackify للمستخدمين التسجيل وتسجيل الدخول (عبر البريد الإلكتروني وكلمة المرور أو حساب Google)، وإدارة قوائم المهام والمهام الشخصية بعمليات كاملة (إنشاء، قراءة، تعديل، حذف)، مع دعم مستويات الأولوية وتتبع الحالة. كل نقطة نهاية (Endpoint) موثقة وقابلة للاختبار مباشرة عبر Swagger UI.

الأمان

تجمع آلية المصادقة بين JWT وGoogle OAuth2 ضمن سلسلة فلاتر (Filter Chain) واحدة في Spring Security، بحيث يتم فرض القواعد الأمنية بشكل موحّد على طريقتَي تسجيل الدخول بدلاً من التعامل معهما كنظامين منفصلين. كما تم حماية نقاط المصادقة من محاولات الاختراق بالقوة العمياء (Brute Force) عبر تحديد معدل الطلبات لكل عنوان IP باستخدام Bucket4j وCaffeine.

البيانات وإدارة التحديثات

يتم تخزين البيانات في MySQL عبر Spring Data JPA وHibernate، مع إدارة جميع تغييرات هيكل قاعدة البيانات (Schema) بشكل مُتحكَّم به من خلال Flyway — مما يضمن تطور قاعدة البيانات بشكل آمن ومتوقع عبر البيئات المختلفة بدلاً من الاعتماد على تعديلات يدوية.

تصميم الـ API

17 نقطة نهاية REST موزعة بين المصادقة، وقوائم المهام، والمهام، وإدارة الملف الشخصي للمستخدم، كلها موثقة عبر Swagger/OpenAPI للاستكشاف التفاعلي. كما تم توفير نقاط فحص الصحة والمعلومات عبر Spring Boot Actuator لأغراض المراقبة الأساسية.

Trackify — Secure Task Management REST API (Java/Spring Boot)

A production-ready backend for managing tasks and task lists, built around secure authentication and a clean, well-documented REST API — the kind of foundation a real multi-user product would run on.

What it does

Trackify lets users register, log in (with email/password or Google), and manage personal task lists and tasks with full CRUD support, priority levels, and status tracking. Every endpoint is documented and testable through Swagger UI.

Security

Authentication combines JWT and Google OAuth2 inside a single Spring Security filter chain, so both login methods are enforced consistently across the API rather than handled as two separate systems bolted together. Auth endpoints are protected against brute-force attempts with per-IP rate limiting using Bucket4j and Caffeine.

Data & migrations

Data is persisted in MySQL via Spring Data JPA and Hibernate, with all schema changes version-controlled through Flyway migrations — so the database evolves safely and predictably across environments instead of relying on manual changes.

API design

17 REST endpoints across authentication, task lists, tasks, and user profile management, all documented with Swagger/OpenAPI for interactive exploration. Health and info endpoints are exposed via Spring Boot Actuator for basic observability.

بطاقة العمل

اسم المستقل
عدد الإعجابات
1
تاريخ الإضافة
المهارات