PDF Toolkit
مجموعة أدوات قائمة على المتصفح لدمج وتقسيم وتنظيم وتحويل وضغط ملفات PDF، حيث لا تغادر الملفات جهازك أبداً.
Next.js 16
React 19
Tailwind CSS 4
pdf-lib
PDF.js
Ghostscript (WASM)
dnd-kit
JSZip

نظرة عامة
أداة PDF Toolkit هي حل من جانب العميل لأدوات مثل iLovePDF. فهي تتعامل مع مهام PDF اليومية التي يبحث عنها الأشخاص، بما في ذلك دمج الملفات واستخراج الصفحات وإعادة الترتيب والتدوير والتحويل من الصور وإليها والضغط، وتقوم بكل ذلك داخل المتصفح. لا يتم رفع أي شيء. يقع الموقع التسويقي ودليل الأدوات في مقدمة مجموعة من مساحات العمل الحية، كل منها عبارة عن أداة قائمة بذاتها.
المشكلة
تعمل جميع أدوات PDF الشائعة على الإنترنت بنفس الطريقة. أنت ترفع مستندك إلى خادم، ويتم معالجته، وتُنزل النتيجة. لتحويل صورة سريع، هذا مقبول. أما بالنسبة لعقد موقع أو مسح لبطاقة هوية أو نموذج طبي أو بيان مالي، فهذا يعني تسليم ملف حساس لطرف ثالث والثقة في سياسة الاحتفاظ الخاصة بهم. كانت هناك فجوة واضحة لأداة تقوم بنفس المهام ولكنها تحتفظ بكل ملف على جهاز المستخدم نفسه.
دوري ومنهجية العمل
لقد قمت ببناء المنتج بالكامل: الموقع التسويقي، ودليل الأدوات، وكل أداة عاملة. كان القرار الأساسي هيكلياً: تنفيذ كل أعمال PDF الفعلية في المتصفح. قاد هذا الاختيار كل شيء آخر، لأن المعالجة من جانب العميل كانت تعني عدم وجود خوادم لتشغيلها، ولا تكلفة لكل ملف، وضماناً للخصوصية يمكنني ذكره بوضوح: ملفاتك لا تُرسل أبداً إلى أي مكان.
الحزمة التقنية
الميزات الرئيسية
معرض الصور


التحديات والحلول
الجزء الصعب في "بدون خادم" هو أن المتصفح يجب أن يقوم بكل ما يقوم به الخادم عادةً. لقد قمت بتقسيم العمل عبر محركين. يتولى pdf-lib التعديلات الهيكلية حيث تتم إعادة كتابة المكونات الداخلية للمستند، ويتولى PDF.js التصيير كلما دعت الحاجة إلى عرض صفحة أو تحويلها إلى صورة.
كان ضغط الملفات هو العقدة التقنية الأبرز؛ إذ يعتمد ضغط ملفات PDF الفعلي عادةً على أداة Ghostscript الأصلية الثقيلة التي تعمل على خادم مركزي. وللوفاء بوعود الخصوصية التامة دون تهاون، استخدمت نسخة WebAssembly من Ghostscript لتشغيل المحرك محلياً داخل المتصفح مباشرة. بذلك أصبح الضغط حقيقياً وعالي الكفاءة، مع بقاء كافة الملفات على جهاز المستخدم دون رفع أي بيانات. كما صممت إعادة ترتيب الصفحات والملفات لتكون عملية وسلسة عبر حزمة dnd-kit للسحب والإفلات، وجمعت عمليات تصدير الصور المتعددة في ملف ZIP موحد باستخدام JSZip عوضاً عن إطلاق تنزيلات متزامنة متعددة.
النتيجة
النتيجة هي مجموعة أدوات متكاملة على غرار iLovePDF تعمل دون خادم خلفي، ودون تخزين للملفات، ودون أي تكاليف استضافة تتجاوز تسليم الملفات الثابتة، مع تقديم ميزة تعجز عنها الحلول التقليدية القائمة: ضمان موثوق بأن المستندات لا تغادر جهاز المستخدم أبداً. إنها أداة ذات نفع حقيقي، وتُثبت مدى قدرة المتصفحات الحديثة على إنجاز المهام التقنية المعقدة محلياً.
هل تواجه تحدياً تقنياً مشابهاً في منتجك؟
شاركني الوضع الحالي للمنتج، والنتيجة المطلوبة، والمعوقات القائمة. وسأعتمد على ذلك في تحديد محطة تسليم أولى منطقية وعملية.
خدمات تطوير تطبيقات الويب