Tidy عاد: القصة وراء إعادة بنائنا الكاملة بعد ٦ سنوات
إذا كنت تقرأ هذا، فهناك احتمال أنك تتذكر Tidy. ربما استخدمته في عام ٢٠١٨ أو ٢٠١٩. ربما مررت بمئات الصور، تنظف معرض صورك بتحريك إصبعك. ربما تركت لنا تقييماً. إذا فعلت ذلك، شكراً لك. لقد قرأنا كل تقييم.
اقرأ أيضاً: ما الجديد في Tidy 2.1 و2.2: تصنيف للألبومات، تحديات أسبوعية والمزيد
ثم اختفينا.
لمدة ست سنوات، ظل Tidy دون تحديث في App Store. لا تحديثات. لا ميزات جديدة. لا تواصل. التطبيق كان لا يزال يعمل، في الغالب، لكن العالم من حوله استمر في التطور. iOS تطور. الهواتف حصلت على كاميرات أفضل (ومكتبات صور أكبر). تطبيقات جديدة ظهرت واختفت. و Tidy ببساطة... ظل مكانه.
اقرأ أيضاً: كيفية تنظيم الصور على iPhone: الدليل الشامل (2026)
اليوم، يتغير كل شيء. Tidy v2.0 هو إعادة بناء كاملة من الصفر. ليس تحديثاً. ليس تجديداً. تطبيق جديد بالكامل، مبني من الأساس بتقنيات حديثة، ميزات جديدة، وكل ما تعلمناه في السنوات منذ إطلاقنا الأول.
اقرأ أيضاً: كيف يكتشف الذكاء الاصطناعي صورك المكررة والمتشابهة (ولماذا هو أفضل من البحث اليدوي)
هذه هي قصة كيف وصلنا إلى هنا.
Tidy الأصلي: ٤.٨ نجوم و ٧٢٣ تقييم
أُطلق Tidy في عام ٢٠١٨ بفكرة بسيطة: تنظيف مكتبة صورك يجب أن يبدو كلعبة. اسحب لليمين للاحتفاظ بالصورة. اسحب لليسار لحذفها. لا قوائم معقدة، لا أنظمة مجلدات، لا أطر تنظيمية. فقط قرارات سريعة وغريزية تزيل الفوضى.
الاستجابة فاجأتنا. خلال أشهر، جمع Tidy مئات التقييمات بمتوسط تقييم ٤.٨ من ٥ نجوم. بحلول وصولنا إلى ٧٢٣ تقييماً، كان النمط واضحاً: الناس أحبوا آلية السحب. أحبوا مدى سرعتها. أحبوا أنها جعلت مهمة مملة تبدو ممتعة.
Tidy بالأرقام
- ٤.٨ تقييم بالنجوم
- ٧٢٣ تقييم
- ٣١ لغة
- ٢٠١٨ سنة الإطلاق
أخبرنا المستخدمون بأشياء مثل “هذا هو التطبيق الذي لم أكن أعلم أنني أحتاجه” و”حذفت ٣٠٠٠ صورة في فترة ظهيرة واحدة.” تُرجم التطبيق إلى ٣١ لغة. ظهر في ميزات App Store في عدة دول. بالنسبة لتطبيق مستقل صغير ذي هدف محدد، كان أداؤه يفوق حجمه بكثير.
بُني Tidy الأصلي بلغة Swift 4، باستخدام نمط بنية MVC الذي كان معياراً لتطوير iOS في ذلك الوقت. كان تطبيقاً متيناً لعصره. لكن التقنية تتطور بسرعة، وبحلول عام ٢٠١٩، بدأت التشققات تظهر.
لماذا صمتنا لمدة ٦ سنوات
الإجابة الصادقة هي: الحياة حدثت.
بُني Tidy بواسطة فريق صغير، وعندما تغيرت الأولويات - كما يحدث مع المطورين المستقلين - سقط التطبيق في أسفل القائمة. لم تكن هناك قصة درامية، لا استحواذ، لا قرار إغلاق. فقط الانجراف البطيء الذي يحدث عندما يتوقف مشروع جانبي عن تلقي الاهتمام.
في هذه الأثناء، استمرت الفجوة بين مكان Tidy والمكان الذي يحتاج أن يكون فيه بالاتساع:
- وصل SwiftUI في عام ٢٠١٩ ونضج بسرعة، مما جعل واجهات UIKit تبدو قديمة
- انفجرت مكتبات الصور في الحجم. انتقل مستخدم iPhone المتوسط من ٢٠٠٠-٥٠٠٠ صورة إلى ١٠٠٠٠-٥٠٠٠٠
- AI والتعلم الآلي انتقلا من تجريبي إلى متوقع. بدأ المستخدمون يتوقعون أن تكون التطبيقات ذكية
- ودجات iOS و Live Activities أنشأت أسطحاً جديدة كان من المتوقع أن تدعمها التطبيقات
- توقعات الخصوصية ارتفعت بشكل كبير، مع مطالبة المستخدمين بالمعالجة على الجهاز والشفافية
- Swift نفسها تطورت عبر الإصدارات من 5.0 إلى 6.0، مع التزامن الصارم وميزات لغة جديدة
بحلول الوقت الذي نظرنا فيه بجدية إلى Tidy مرة أخرى، كان الكود الأصلي أثرياً. كود Swift 4 لن يُترجم مع سلاسل الأدوات الحديثة. أنماط UIKit تم استبدالها مرتين. بنية لا يمكنها دعم أي من الميزات التي يتوقعها المستخدمون الآن.
كان لدينا خياران: محاولة ترقيع وتحديث الكود القديم، أو البدء من جديد.
قرار إعادة البناء من الصفر
اخترنا إعادة البناء. إليك السبب.
تحديث Tidy القديم كان سيعني نقل كود Swift 4 إلى Swift 6، وإعادة كتابة واجهة المستخدم بالكامل من UIKit إلى SwiftUI، واستبدال بنية MVC بشيء حديث، وإضافة أطر Apple جديدة (Vision، Core ML، StoreKit 2، WidgetKit)، وبطريقة ما جعل كل هذه التغييرات تعمل معاً دون كسر التطبيق الحالي.
في تطوير البرمجيات، هناك مقال شهير لـ Joel Spolsky بعنوان “أشياء يجب ألا تفعلها أبداً، الجزء الأول”، يُجادل بأن إعادة الكتابة من الصفر دائماً تقريباً خطأ. وبالنسبة لمعظم المشاريع، هو محق. لكن Tidy كان الاستثناء:
- صفر كود مشترك - بعد تقييم الكود القديم، قدّرنا أن أقل من ٥٪ من الكود الأصلي يمكن إعادة استخدامه. اللغة تغيرت كثيراً، الأطر كانت مختلفة تماماً، والبنية غير متوافقة
- منصة مختلفة - Tidy الأصلي استهدف iOS 11. Tidy الجديد يستهدف iOS 18. هذه عملياً منصات مختلفة بقدرات مختلفة، ولغات تصميم، وتوقعات مستخدمين مختلفة
- نطاق موسع - Tidy الأصلي فعل شيئاً واحداً: اسحب للتنظيف. Tidy الجديد يحتاج فلاتر AI، محرر صور، وضع المقارنة، التلعيب، ودجات، Live Activities، والمزيد. محاولة تثبيت كل ذلك على البنية القديمة ستكون مثل إضافة طوابق لمنزل من طابق واحد بتكديسها على السقف
- أساس نظيف للمستقبل - البدء من جديد يعني أننا نستطيع تبني التزامن الصارم لـ Swift 6 من اليوم الأول، واستخدام SwiftData بدلاً من Core Data، وتنفيذ Clean Architecture بشكل صحيح، وبناء أساس يدعم سنوات من التطوير المستقبلي
لم تكن إعادة البناء قراراً سريعاً. قضينا أسابيع في تقييم الكود القديم، والنمذجة في كلا الاتجاهين (التحديث مقابل إعادة الكتابة)، وفي النهاية خلصنا إلى أن إعادة البناء من الأساس ستكون أسرع وأنظف وستنتج تطبيقاً أفضل من أي محاولة لتحديث الأصلي.
هل أنت مستعد لتنظيف معرض صورك؟
حمّل Tidy وابدأ بالسحب. كشف المكررات بالذكاء الاصطناعي، فلاتر ذكية، ومحرر صور مدمج.
كل ما هو جديد في Tidy v2.0
إذاً ماذا بنينا؟ إليك كل ميزة رئيسية وتحسين في Tidy الجديد.
إعادة كتابة بـ SwiftUI لنظام iOS الحديث
التطبيق بالكامل مبني بـ SwiftUI، إطار واجهة المستخدم التصريحي الحديث من Apple. هذا يعني رسوماً متحركة سلسة، ودعماً أصلياً لـ Dynamic Type (تحجيم نصوص الوصولية)، ودعماً تلقائياً للوضع الداكن، ومظهراً متسقاً ومصقولاً عبر كل شاشة. واجهة المستخدم تبدو وكأنها تنتمي إلى iOS 18 لأنها بُنيت خصيصاً له.
فلاتر ذكية مدعومة بالذكاء الاصطناعي
هذه هي الإضافة الأكبر لتجربة Tidy الأساسية. بدلاً من التمرير يدوياً عبر مكتبة صورك بالكامل، يمكنك الآن استخدام فلاتر مدعومة بـ AI لإظهار أنواع محددة من الصور التي يُحتمل أن تكون مرشحة للتنظيف:
- الصور الضبابية - AI يحدد الصور ذات ضبابية الحركة أو اهتزاز الكاميرا أو التركيز المفقود
- الجودة المنخفضة - يكتشف الصور سيئة التعريض أو المضغوطة بشكل مفرط أو منخفضة الجودة
- الصور المتشابهة - يجمع الصور شبه المتطابقة معاً باستخدام التجزئة الإدراكية، حتى تتمكن من اختيار الأفضل وحذف الباقي
- المكررات - يجد النسخ المكررة التامة والقريبة بناءً على البيانات الوصفية والتشابه البصري
- أفضل اللقطات - في مجموعة من الصور المتشابهة، يقترح AI الخيار الأكثر وضوحاً وأفضل تكويناً
- الأدوات المساعدة - يحدد لقطات الشاشة والإيصالات والمستندات والصور “المساعدة” الأخرى التي ربما لا تحتاج للاحتفاظ بها للأبد
كل معالجة AI تحدث على جهازك باستخدام أطر Core ML و Vision من Apple. لا يتم تحميل أي صور إلى أي خادم. يعمل التحليل في الخلفية أثناء شحن هاتفك ليلاً، لذا يكون جاهزاً عندما تكون أنت جاهزاً.
محرر صور كامل مع ٢٩ فلتر
يتضمن Tidy v2.0 مجموعة تحرير صور كاملة. هذا ليس محرر سطوع/تباين بسيط - إنه نظام تحرير احترافي من خمس فئات:
- الضبط - ١٠ أشرطة تعديل تشمل التعريض، الإبرازات، الظلال، التباين، التشبع، الدفء، الحدة، الحبيبية، وضبابية الخلفية
- الجمال - ٦ أدوات تجميل طبيعية مع رسائل إيجابية عن الجسد (تنعيم البشرة، إضاءة البورتريه، تفتيح العيون، تنحيف الوجه، تكبير العيون، نفخ الشفاه)
- الرتوش - فرشاة الإصلاح وأدوات تبييض الأسنان للتصحيحات المستهدفة
- FX - ٢٩ فلتر إبداعي تتراوح بين محاكاة أفلام خفيفة وتأثيرات فنية جريئة
- AI - تكبير فائق الدقة وتأثيرات نقل الأنماط المدعومة بالذكاء الاصطناعي
يتضمن المحرر تراجع/إعادة، وشريط مقارنة قبل/بعد، وتكبير بالقرص على اللوحة. كل تعديل غير مدمر، ويمكنك الحفظ كنسخة جديدة أو استبدال الأصل.
وضع المقارنة
كانت إحدى الميزات الأكثر طلباً في Tidy الأصلي هي القدرة على مقارنة الصور المتشابهة جنباً إلى جنب. يقدم Tidy v2.0 هذا من خلال وضع مقارنة مخصص يتضمن شريط صور مصغرة للتصفح السريع، وتكبير بالقرص لفحص التفاصيل، وشريط قبل/بعد لتقييم التعديلات.
التلعيب
جعل Tidy الأصلي التنظيف ممتعاً من خلال آلية السحب. يأخذ Tidy v2.0 هذا أبعد بنظام تلعيب كامل:
- إحصائيات الجلسة - الصور المراجعة والمحتفظ بها والمحذوفة والوقت لكل جلسة
- سلاسل التنظيف - تتبع السلاسل اليومية والأسبوعية لبناء الزخم
- المعالم - نظام إنجازات مع رسوم متحركة للقصاصات واحتفالات لمسية
- بطاقات تنظيف قابلة للمشاركة - رسومات ملخص جميلة جاهزة للمشاركة على وسائل التواصل الاجتماعي
٢٠ لغة بما فيها RTL
يُطلق Tidy v2.0 بدعم ٢٠ لغة: الإنجليزية، العبرية، العربية، الفارسية، الروسية، الفرنسية، الهندية، الرومانية، الإسبانية، البرتغالية، الألمانية، الإيطالية، اليابانية، الكورية، الهولندية، البولندية، التايلاندية، التركية، الصينية المبسطة، والصينية التقليدية.
ثلاث من هذه اللغات (العبرية والعربية والفارسية) هي من اليمين إلى اليسار (RTL). كل شاشة في Tidy مصممة لتنعكس بشكل صحيح لمستخدمي RTL، بما في ذلك لعبة السحب، والمحرر، وشريط قبل/بعد، وجميع عناصر التنقل. دعم RTL ليس فكرة لاحقة - إنه مدمج في الأساس.
الودجات التفاعلية و Live Activities
الودجات التفاعلية تتيح لك بدء جلسة تنظيف من شاشتك الرئيسية بنقرة واحدة. تعرض Live Activities تقدم التنظيف على شاشة القفل و Dynamic Island في الوقت الفعلي. معاً، تقللان الاحتكاك بين “يجب أن أنظف صوري” وفعل ذلك فعلياً.
اشتراك Gold
Tidy v2.0 مجاني للتحميل والاستخدام. لعبة السحب الأساسية والفلاتر الأساسية ومقارنة الصور كلها متاحة بدون تكلفة. للمستخدمين الذين يريدون المزيد، Tidy Gold يفتح:
- جميع الفلاتر الذكية المدعومة بـ AI (كشف الضبابية، الصور المتشابهة، أفضل اللقطات، الأدوات المساعدة)
- محرر الصور الكامل مع جميع الـ ٢٩ فلتر وأدوات التجميل
- ميزات التلعيب المتقدمة
- بدون إعلانات
Gold متاح كاشتراك لمدة شهر واحد أو ٣ أشهر أو ٦ أشهر. اخترنا هذا النموذج لأنه يوائم حوافزنا مع حوافزكم: نحن ننجح فقط إذا استمررتم في إيجاد Tidy قيماً بما يكفي للاستمرار في استخدامه.
التحديات التقنية لإعادة البناء
إعادة بناء تطبيق من الصفر تبدو محررة، وهي كذلك - في البداية. لكنها تأتي أيضاً مع مجموعة من التحديات الخاصة بها. إليك بعض أهم العقبات التقنية التي واجهناها.
التزامن الصارم في Swift 6
قدم Swift 6 فحص التزامن الصارم، مما يعني أن المترجم يفرض أمان الخيوط في وقت البناء. هذا رائع لمنع الأخطاء لكنه متطلب بشكل لا يُصدق أثناء التطوير. كل جزء من الحالة المتغيرة المشتركة يحتاج إلى حماية بواسطة actor، أو وسمه كـ Sendable، أو عزله في الخيط الرئيسي.
بالنسبة لتطبيق صور، هذا تحدٍ خاص لأن معالجة الصور متزامنة بطبيعتها. تحميل الصور المصغرة، وتشغيل تحليل AI، وتطبيق الفلاتر، وحفظ التعديلات - كل هذه العمليات تحدث على خيوط خلفية بينما تتحدث واجهة المستخدم على الخيط الرئيسي. الحصول على نموذج التزامن الصحيح تطلب جهداً كبيراً، لكن النتيجة هي تطبيق خالٍ تقريباً من الأعطال فيما يتعلق بمشاكل الخيوط.
التجزئة الإدراكية لكشف الصور المتشابهة
إيجاد الصور المتشابهة يبدو مباشراً حتى تحاول تنفيذه على نطاق واسع. يستخدم Tidy تقنية تسمى التجزئة الإدراكية (pHash) لمقارنة الصور بصرياً. كل صورة تُختزل إلى تجزئة ٦٤ بت تمثل محتواها البصري، والصور ذات التجزئات المتشابهة تُجمع معاً.
التحدي كان ضبط عتبة التشابه. صارمة جداً، والصور المرتبطة لا تُجمع معاً. متساهلة جداً، وصور غير مرتبطة ينتهي بها المطاف في نفس المجموعة. استقررنا على عتبة مسافة Hamming من ١٠ للمقارنات القياسية و ١٤ لصور الالتقاط المتتابع (المأخوذة خلال ١٠ ثوانٍ من بعضها)، مع قطر مجموعة أقصى ١٤ لمنع المجموعات من النمو الزائد.
كان علينا أيضاً اختيار خوارزمية التجميع الصحيحة. النهج الجشع البسيط كان أحياناً يقسم الصور المرتبطة إلى مجموعات منفصلة. نفذنا تجميع Union-Find بدلاً من ذلك، الذي يحدد بشكل صحيح المكونات المتصلة ويطبق فقط قيد القطر على المجموعات الكبيرة جداً. النتيجة هي تجميعات صور طبيعية وبديهية.
معالجة AI على الجهاز
تشغيل نماذج AI على الجهاز يمثل مقايضة مستمرة بين الدقة والأداء. نموذج يستغرق ثانيتين لكل صورة غير قابل للاستخدام عندما لديك ٣٠,٠٠٠ صورة للتحليل. نموذج يعمل في ١٠ ميلي ثانية لكل صورة قد لا يكون دقيقاً بما يكفي ليكون مفيداً.
حللنا هذا بـالمعالجة في الخلفية. يستخدم Tidy مهام BGProcessingTasks في iOS لتشغيل تحليل AI الكامل أثناء الليل بينما هاتفك يشحن ومتصل بـ WiFi. يتضمن التحليل كشف الضبابية، وتقييم الجودة، وتجزئة التشابه، وكشف الوجوه - كلها تُعالج بدقة عالية لأنه لا يوجد ضغط وقت. بحلول الصباح، نتائجك جاهزة.
للميزات في الوقت الفعلي (مثل محرر التجميل)، نستخدم خطوط أنابيب محسنة تضحي ببعض الجودة مقابل السرعة. أدوات التجميل تعمل بمعدلات إطارات تفاعلية لأنها تستخدم مظللات Metal GPU من Apple وفلاتر Core Image، المُسرّعة بالأجهزة على جميع أجهزة iPhone الحديثة.
مظللات Metal لتشويه الوجه
أدوات التجميل التي تعيد تشكيل ملامح الوجه (تنحيف الوجه، تكبير العيون، نفخ الشفاه) تستخدم مظللات Metal CIWarpKernel لتشويه الشبكة في الوقت الفعلي. كتابة هذه المظللات تطلبت العمل في مجموعة فرعية مقيدة من لغة Metal Shading المتوافقة مع خط أنابيب Core Image.
خطأ صعب بشكل خاص تضمن تشويه خط الفك. التنفيذ الأولي وضع مرساة التشويه في الإحداثي العمودي الخطأ (الجبهة بدلاً من الذقن)، مما تسبب في إعادة تشكيل Face Slim للجزء الخطأ من الوجه. تطلب الأمر دراسة دقيقة لنظام إحداثيات معالم الوجه في إطار Vision للحصول على الموضع الصحيح.
دعم تخطيط RTL
دعم اللغات من اليمين إلى اليسار هو أكثر من مجرد قلب محاذاة النص. كل عنصر تفاعلي يحتاج أن يعمل بشكل صحيح في كلا الاتجاهين. لعبة السحب (“اسحب لليمين للاحتفاظ، لليسار للحذف”) تحافظ على معناها الدلالي في RTL - الإيماءات تبقى كما هي لأنها مبنية على دلالات الاحتفاظ/الحذف، وليس اتجاه اليسار/اليمين. شريط قبل/بعد في محرر الصور يقلب اتجاهه بشكل صحيح. تدفقات التنقل تنعكس. وكل قيد تخطيط تم اختباره في كلا وضعي LTR و RTL.
ما القادم
Tidy v2.0 هو أساس، وليس خط نهاية. إليك معاينة لما نعمل عليه للإصدارات القادمة:
- أدوات القص والتدوير - قادمة في v2.1، مع أدلة الاستقامة وإعدادات نسبة العرض إلى الارتفاع
- تكامل Siri و App Intents - “يا Siri، ابدأ جلسة تنظيف صور” ستعمل مباشرة
- ضغط الفيديو - تقليل حجم ملفات الفيديو الكبيرة مع الحفاظ على الجودة
- تحديات التنظيف - تحديات أسبوعية وشهرية بأهداف مواضيعية (مثل “أسبوع تطهير لقطات الشاشة”)
- توقع المساحة - تنبؤات AI لمتى سينفد تخزين هاتفك بناءً على أنماط التقاط الصور
- المزيد من فلاتر AI - بما في ذلك فلتر كشف الميمات وتصنيف محسّن
نحن نستكشف أيضاً التكامل مع Foundation Models API من Apple للبحث باللغة الطبيعية على الجهاز (مثل “أرني صور كلبي على الشاطئ”)، رغم أن هذا يعتمد على جدول Apple لطرح API.
هدفنا هو إصدار تحديثات ذات معنى كل ٤-٦ أسابيع. لن نصمت مرة أخرى.
شكراً لمجتمعنا
قبل أن نختم، نريد أن نقول شيئاً مباشرة للأشخاص الذين استخدموا Tidy الأصلي وقد يقرأون هذا.
شكراً على التقييمات. شكراً على طلبات الميزات. شكراً على تقارير الأخطاء. شكراً على التغريدات والرسائل والتوصيات للأصدقاء. لقد بنيتم شيئاً مميزاً حول تطبيق بسيط، ونحن ممتنون لذلك.
نعلم أن ست سنوات من الصمت وقت طويل. نعلم أن الثقة، بمجرد كسرها، تتطلب جهداً لإعادة بنائها. نحن ملتزمون باستعادتها - ليس بالوعود، بل بتحديثات مستمرة، وتواصل شفاف، وتطبيق يستمر في التحسن.
إذا استخدمت Tidy الأصلي، نحب أن تعود. حمّل v2.0، جرّبه، وأخبرنا برأيك. ملاحظاتك شكّلت النسخة الأولى من Tidy، وستشكل كل نسخة تليها.
وإذا كنت جديداً على Tidy - أهلاً بك. أنت تنضم في بداية شيء نحن فخورون به حقاً. نأمل أن يعجبك.
أفضل وقت لتنظيف مكتبة صورك كان قبل ست سنوات. ثاني أفضل وقت هو الآن.
تريد استكشاف ما يمكن لـ Tidy الجديد فعله؟ ابدأ بأدلتنا حول فلاتر التجميل الطبيعية، مقارنة الصور جنباً إلى جنب، بناء عادة تنظيف بالتلعيب، واستخدام الودجات و Live Activities للتنظيف السريع.
مقالات ذات صلة
- فلاتر تجميل تبدو طبيعية فعلاً - نهج Tidy الأخلاقي في تحسين الصور يبقيك تبدو كما أنت - فقط في يوم رائع.
- حوّل تنظيف الصور إلى عادة يومية - كيف يجعل التلعيب والسلاسل والمعالم إدارة الصور شيئاً تريد فعله حقاً.


