SSD Nodes Learn Hosting plans →
الأدلة Matt Connorبقلم Matt Connor · آخر تحديث في 2026-10-30

Bento: حزمة مكتبية كاملة في ملف HTML واحد

تعرّف إلى Bento المرخّص MIT: ملف HTML واحد بحجم 706 KB في الإصدار v1.2.7، وما يوفّره على VPS صغير مقارنةً بـ Nextcloud وما يكلّفك.

ما هو Bento

Bento عبارة عن حزمة تطبيقات مكتبية تُصدر في ملف HTML واحد. تنزّل ملفاً واحداً وتفتحه في أي متصفح حديث، ويكون الملف نفسه المحرر والمستند. لا يوجد مثبّت ولا حساب. البرنامج مرخّص بموجب ترخيص MIT، ومصدره موجود في github.com/nyblnet/bento، وصدرت أول نسخة منه في 21 July 2026. وفي 27 October 2026، يعني ذلك أن عمره يزيد قليلاً على ثلاثة أشهر، مع 26 إصداراً حتى الآن. ما يزال حداثة البرنامج أهم حقيقة في هذا المقال، وهي سبب تخصيص القسم الأخير للتقييم بدلاً من الترحيل.

ما المقصود فعلياً بعبارة «ملف واحد»

عادةً ما تكون حزمة المكتب المستضافة ذاتياً عبارة عن مجموعة خدمات. يعمل Nextcloud بلغة PHP خلف خادم ويب، مع قاعدة بيانات وذاكرة تخزين مؤقت ومشغّل للمهام في الخلفية. ويكون المحرر خدمة ثانية إلى جانبه، مثل Collabora Online أو ONLYOFFICE Docs، وعادةً ما يعمل داخل حاويته الخاصة ويتصل به المتصفح عبر HTTP. يُخزَّن المستند في نظام الملفات وفي صف داخل قاعدة البيانات، بينما توجد جلسة التحرير داخل خدمة المحرر.

يلغي Bento هذه الحزمة. يكون التنزيل عبارة عن Bento_Slides.bento.html، بحجم يقارب 659 KB في الإصدار v1.0.11 بتاريخ 27 July 2026، وبحجم يقارب 706 KB في الإصدار v1.2.7 بتاريخ 11 October 2026. ويحتوي هذا الملف الواحد على ما يلي:

  • المحرر، وهو العارض أيضاً
  • بيئة تشغيل العروض التقديمية التي تعرض العرض بملء الشاشة
  • الخطوط والصور التي يستخدمها العرض، وهي مضمنة داخله
  • المستند نفسه، ضمن كتلة JSON قابلة للقراءة بالقرب من أعلى الملف

أما الحفظ فهو الجزء غير المعتاد. يعيد الملف كتابة كتلة بياناته الخاصة. تطلب الصفحة من المتصفح صلاحية الكتابة عبر File System Access API، وهي واجهة في المتصفح تتيح للصفحة الكتابة مجدداً إلى ملف اختاره المستخدم. وفي المتصفحات التي لا تدعم هذه الواجهة، تحصل بدلاً من ذلك على تنزيل. ينتج عن تحرير عرض تقديمي نسخة جديدة من الملف نفسه، وتظل مكتفية ذاتياً. لا يُرفع أي شيء، لأنه لا توجد جهة يُرفع إليها شيء.

هذا هو التفصيل الذي يخطئ الناس في فهمه عندما يسمعون عبارة «ملف واحد». فهذا لا يعني وجود ملف ثنائي واحد على الخادم يشغّل حزمة المكتب كعملية واحدة على VPS الخاص بك. لا توجد أي عملية على الإطلاق. تعمل بيئة التشغيل داخل المتصفح، ولذلك يقدّم VPS، إذا استخدمته، ملفاً ثابتاً فقط ولا يقدّم أي شيء آخر.

ما الذي تتضمنه حزمة Bento المكتبية اليوم

"حزمة مكتبية" هي طموح المشروع وليست قائمة مكوّناته الحالية. يوجد تطبيق واحد: bento/slides، وهو محرر للعروض التقديمية. وتسمّي خارطة الطريق bento/spaces لتدوين الملاحظات، وbento/dash للجداول والبيانات الجدولية، وbento/vault، على أن يكون كل منها في ملف .bento.html مستقل ومتكامل. إذا كنت تحتاج إلى معالج نصوص أو برنامج جداول اليوم، فلا يوفّر Bento أياً منهما.

وتيرة الإصدارات مرتفعة. كان v1.0.6 في 21 July 2026 أول إصدار منشور، ووصل v1.0.11 في 27 July 2026، أي ستة إصدارات خلال سبعة أيام. واستمرت الوتيرة منذ ذلك الحين: كان v1.2.7 في 11 October 2026 الإصدار رقم 23، وأصبح v1.2.10 في 24 October 2026 الإصدار رقم 26. وهذا مؤشر جيد على نشاط المشرفين على المشروع، لكنه تحذير بشأن البرنامج. فالبرنامج الذي يتطور بهذه السرعة لا يزال يكتشف أخطاءه ويصلحها، وهذا ما تعكسه ملاحظات الإصدار: إصلاح تعطل التعاون المباشر عند التعامل مع نص كبير، وإصلاح تكرار أوراق الأنماط في الملفات المحفوظة، وإصلاح خطوط الأساس للمخططات عند استخدام قيم سالبة. تعالج خمسة من الإصدارات الستة من v1.2.5 إلى v1.2.10 مشكلات أمنية اكتشفها المشروع خلال مراجعته الداخلية؛ أما v1.2.8 وحده فلا يفعل ذلك.

لماذا يناسبك ملف واحد على VPS صغير

يعني نشر deck نسخ ملف إلى مجلد يقدمه خادم الويب لديك مسبقاً. لا توجد حاجة إلى تنسيق خدمات، ولا إلى إبقاء حاوية قيد التشغيل، ولا إلى ترحيل قاعدة بيانات عند الترقية. قارن ذلك بخدمات التحرير، باستخدام الحد الأدنى المنشور لكل منها:

رسم بيانيPublished minimum RAM for the editing backend, MB
البيانات وراء هذا الرسم البياني
[
  {
    "label": "bento/slides (no backend)",
    "min_ram_mb": 0
  },
  {
    "label": "Collabora Online CODE",
    "min_ram_mb": 1024
  },
  {
    "label": "ONLYOFFICE Docs, Debian package",
    "min_ram_mb": 2048
  },
  {
    "label": "ONLYOFFICE Docs, Docker",
    "min_ram_mb": 4096
  }
]

هذه الحدود الدنيا منشورة، وليست أرقاماً قيسَت على خادم قيد التشغيل. الرقم الخاص بـCollabora هو متطلب النظام البالغ 1 GB الذي تنشره Nextcloud لتطبيق Collabora Online. ويُضاف إليه مقدار من الذاكرة لكل مستخدم متصل، ولذلك فإن 1,024 MB هو الحد الأدنى قبل اتصال أول مستخدم. يطلب مركز مساعدة ONLYOFFICE، وفقاً لما كان متاحاً في 27 October 2026، ما لا يقل عن 2,048 MB من حزمة Debian أو Ubuntu، و4,096 MB في Docker، مع توفر 4 GB على الأقل من swap و40 GB من مساحة القرص الحرة في كلتا الحالتين. يحتاج backend التحرير في Bento إلى 0 MB لأنه لا يوجد backend للتحرير. ستشغّل Nextcloud نفسه، مع قاعدة بياناته وذاكرته المخبئية، أسفل أي من خدمتي التحرير. لذلك يحدد هذا الفارق ما يمكنك استضافته أيضاً على VPS بسعة 2 GB.

تصبح النسخ الاحتياطية أبسط بالطريقة نفسها. تعني استعادة Nextcloud استعادة الملفات وقاعدة البيانات مع تطابقهما في النقطة الزمنية نفسها. أما استعادة deck في Bento فتعني استعادة ملف واحد. ومع ذلك، يحتاج الملف إلى نسخة احتياطية فعلية مع سجل إصدارات، لأن المحرر يعيد كتابة الملف في مكانه. والكتابة في المكان نفسه قد تفشل: تغطيها لقطة restic مجدولة لهذا المجلد.

يوجد مكوّن خادم اختياري واحد. يستخدم التعاون المباشر ما يسمّيه المشروع blind relay، ويمكن استضافته ذاتياً من server/sync-worker/ في المستودع. تُشفَّر المستندات في المتصفح باستخدام AES-GCM (Galois/Counter Mode، وهو نمط تشفير موثَّق)، ولا يغادر مفتاح الغرفة الملف، بينما يحتفظ relay بالنص المشفَّر وتوقيت الاتصال وhash ذلك المفتاح. لا تحتاج إلى relay عند التحرير بشكل مستقل.

ما الذي تتنازل عنه مقارنةً بـNextcloud وCollabora

التحكم في الوصول هو أكبر فجوة. في Bento، يُنشأ مفتاح التعاون مع المستند ويبقى داخل الملف، لذلك تعني حيازة الملف الانضمام إلى الجلسة. وتدوير المفتاح هو الطريقة التي تلغي بها وصول شخص ما. لا يدعم هذا النموذج الحسابات أو المجموعات أو تسجيل الدخول الموحّد أو سجل التدقيق. يوفّر Nextcloud مستخدمين، وروابط مشاركة لها تواريخ انتهاء، وحصصاً، وسجل إصدارات على الخادم، وتطبيقات للأجهزة المحمولة. إذا احتاج شخصان إلى مستويين مختلفين من الوصول إلى المستند نفسه، فلا يستطيع Bento التعبير عن ذلك.

قابلية التشغيل البيني للصيغ هي الفجوة الثانية. يخزّن Bento بياناته بصيغة JSON الخاصة به، وهذا هو سبب سهولة قراءة الملف وإمكانية تعديله بواسطة برنامج نصي. صُمّم Collabora وONLYOFFICE لتحويل OOXML ذهاباً وإياباً (عائلة .docx و.pptx) بدرجة عالية من الدقة، لأن هذه هي الصيغة التي سيرسلها إليك بقية العالم. بدأ Bento بتقليص هذه الفجوة: أضاف v1.2.6 (4 October 2026) استيراد PowerPoint، وأضاف v1.2.7 (11 October 2026) صفحة واحدة داخل المتصفح لتحويل عروض PowerPoint إلى الصيغة ومنها. أُضيفت الميزتان قبل بضعة أسابيع فقط، لذلك راجع ملاحظات الإصدار لمعرفة ما يستورده الإصدار الذي نزّلته وما يصدّره، قبل إنشاء سير عمل يفترض التوافق مع PowerPoint.

النضج هو الفجوة الثالثة. يوثّق المشروع نقاط الضعف الخاصة به بوضوح، وهذا يُحسب له. يعتمد التراجع أثناء التعاون المباشر على اللقطات، وقد يعيد تعديلاً متزامناً أجراه متعاون إلى الخاصية نفسها. يركّز التحرير أولاً على أجهزة سطح المكتب، بينما تؤدي الهواتف أداءً أفضل في العرض والتقديم منه في التحرير. وما زال README يدرج الأمرين ضمن القيود المعروفة. يتطور دعم الهواتف بسرعة: في v1.0.11 لم تكن قائمة الحفظ باسم ملائمة لشاشة الهاتف، وفي v1.0.12 أصبح حفظ نسخة قابلاً للوصول من الهاتف، وفي v1.0.19 أُضيف تحرير النص باللمس، وهو ما كان يجعل العرض حتى ذلك الوقت للقراءة فقط فعلياً على الهاتف. وبما أن عمر المشروع يزيد قليلاً على ثلاثة أشهر، فهناك أيضاً قيود غير معروفة.

هل ينبغي أن تثق بالمستندات الفعلية عند استخدامه؟

قسّم السؤال وفقاً لما يحتاجه المستند. تُعدّ محاضرة في مؤتمر، أو عرض مبيعات، أو محاضرة تريد إعادة فتحها بعد عشر سنوات، حالة مناسبة، لأن الملف يتضمن محرّره الخاص ولا يحتاج إلى استمرار وجود المشروع في 2036. أما العقد الذي يراجعه ثلاثة أشخاص، وتخضعه لسياسة احتفاظ، ويحتاج إلى معتمِد محدد بالاسم، فليس حالة مناسبة، لأن هذا المستند يحتاج إلى حسابات وإلى سجل محفوظ على الخادم.

هناك وسيلتان عمليتان للحماية. احتفظ بالعروض التقديمية في نظام للتحكم في الإصدارات أو في نسخة احتياطية تتضمن السجل، لأن الملف الذي يعيد كتابة نفسه عند الحفظ قد يتعرض للتلف أثناء الحفظ أيضاً، وستحتاج إلى نسخة الأمس. وتعامل مع .bento.html الوارد من شخص لا تعرفه على أنه برنامج، لا مستند، لأنه كذلك فعلاً: صفحة ويب تتضمن تطبيقاً كاملاً. افتحه بالطريقة التي تفتح بها أي صفحة ويب غير موثوقة. وتنطبق الحقيقة نفسها بالعكس على عروضك التقديمية: يتضمن كل ملف نسخته الخاصة من المحرر، لذلك عندما تقول ملاحظات الإصدار: "الأمان: حدّث هذا الملف"، كما تفعل كل الإصدارات من v1.2.5 إلى v1.2.10 باستثناء v1.2.8، حدّث العروض التقديمية التي تشاركها. ويطلب v1.2.7 أيضاً من كل من يشارك العروض التقديمية مباشرةً استخدام Reset access مرة واحدة بعد التحديث، بينما يطلب v1.2.9 إلغاء قفل كل عرض تقديمي محمي بكلمة مرور وحفظه مرة واحدة.

تُعدّ إمكانات التشغيل الآلي مفيدة فعلاً، وتستحق الذكر. بما أن المستند عبارة عن JSON عادي داخل الملف، يستطيع وكيل برمجي تعديل .bento.html في موضعه، ويأتي المشروع مع مهارة Claude Code لهذا الغرض. ويعمل ذلك أيضاً مع النماذج المحلية ذات الأوزان المفتوحة، لذلك يستطيع جهاز يشغّل Ollama لتقديم نموذجك الخاص إعداد شرائح من دون إرسال أي شيء خارج الجهاز.

أين يناسب Bento خادمًا صغيرًا

يندرج Bento ضمن الأدوات الأخرى ذات الغرض الواحد التي تستحق مكانًا على VPS صغير لأنها تظل صغيرة: قارئ RSS مستضاف ذاتيًا أو Actual Budget لإدارة الشؤون المالية الشخصية. مهمة واحدة، وبصمة صغيرة، وبيانات يمكنك قراءتها من دون التطبيق. ومن يستبدلون تطبيق الملاحظات لديهم بأحد بدائل Notion المستضافة ذاتيًا يجرون المقايضة نفسها، بينما يغطي الدليل الأوسع لما ينبغي استضافته ذاتيًا بقية القائمة.

إذا كنت تحتاج إلى منصة مستندات كاملة تضم المستخدمين والمشاركة وسجل الإصدارات، فإن Nextcloud على VPS باستخدام Docker وTLS والنسخ الاحتياطية تظل الخيار المناسب. لا ينافس Bento على هذا الدور. بل هو الأداة التي ترسلها إلى شخص خارج خادمك في صورة ملف واحد يفتحه من دون تسجيل دخول أو إضافة.

FAQ

هل يُعد Bento بديلاً عن Nextcloud وCollabora؟

ليس للغرض نفسه. يوفّر Nextcloud مع Collabora أو ONLYOFFICE حسابات ومجلدات مشتركة وصلاحيات وسجل إصدارات من جهة الخادم، ويحتاج إلى حزمة خادم فعلية لتوفير ذلك. يوفّر Bento ملفاً واحداً محمولاً يفتح في أي مكان ولا يحتاج إلى خادم. استخدم Bento عندما يجب أن تكون الوثيقة مكتفية ذاتياً. استخدم حزمة Nextcloud عندما يحتاج عدة أشخاص إلى صلاحيات وصول مختلفة إلى الوثيقة نفسها مع مرور الوقت.

هل يحتاج Bento إلى خادم أو VPS؟

لا. يفتح ملف .bento.html من القرص المحلي في أي متصفح حديث، ويمكن تحريره دون اتصال. يفيد VPS في أمرين اختياريين: تقديم الملف عبر HTTPS حتى يتمكن الآخرون من تنزيله، وتشغيل مرحّل المزامنة للتعاون المباشر. يمكن استضافة المرحّل ذاتياً من server/sync-worker/ في مستودع المشروع، وهو يخزّن النص المشفّر وبيانات الاتصال فقط، لذلك لا يطّلع على محتواك.

بأي تنسيق يحفظ Bento الوثائق؟

يحفظها بتنسيق JSON خاص به، مكتوباً في كتلة مقروءة قرب أعلى ملف HTML، مع تضمين الخطوط والصور بجانبه. افتح الملف في محرر نصوص، ويمكنك قراءة بنية الوثيقة. لذلك تستطيع البرامج النصية ووكلاء الذكاء الاصطناعي تحرير العرض التقديمي في موضعه. وهذا يعني أيضاً أن التنسيق المخزّن ليس OOXML. أُضيف استيراد PowerPoint في v1.2.6 بتاريخ 4 October 2026، لكن لا تفترض أن سير عمل .pptx سيستمر حتى تختبر الاستيراد والتصدير في الإصدار الذي تشغّله.

كيف يعمل التعاون إذا لم تكن هناك حسابات مستخدمين؟

يُنشأ مفتاح التعاون عند إنشاء الوثيقة ويظل داخل الملف، لذلك يستطيع كل من يملك الملف الانضمام إلى الجلسة. تندمج التعديلات باستخدام CRDT (نوع بيانات مكرّر خالٍ من التعارض، وهو بنية تدمج التغييرات المتزامنة دون سلطة مركزية) وتنتقل مشفّرة باستخدام AES-GCM. أسماء الحضور ادعاءات وليست أدلة، لذلك تعامل مع قائمة المشاركين على أنها تسمية لا تحققاً من الهوية. يعني إلغاء الوصول تدوير المفتاح وإعادة توزيع الملف.

هل أصبح Bento جاهزاً للوثائق المهمة؟

ترخيصه MIT، ويُطوَّر علناً. كان عمره أقل من أسبوعين في 1 August 2026، مع ستة إصدارات في أسبوعه الأول، وفي 11 October 2026 كان عمره أقل من ثلاثة أشهر مع 23 إصداراً، أُغلق في آخر ثلاثة منها عدد من المشكلات الأمنية. وبحلول 27 October 2026 كان قد وصل إلى 26 إصداراً، وأغلق v1.2.9 وv1.2.10 مزيداً من المشكلات الأمنية. تعامل معه على أنه برنامج تقيّمه هذا الشهر، لا برنامجاً تعتمد عليه معيارياً في هذا الربع. احتفظ بكل عرض تقديمي في نسخة احتياطية تتضمن السجل، وأبقِ الملف محدّثاً، واختبر مسار التصدير الذي تعتمد عليه قبل أن تعتمد عليه فعلياً، واحتفظ بكل ما يخضع لمتطلبات الامتثال أو الاحتفاظ في نظام يوفّر حسابات وسجل إصدارات.

هل كان هذا المقال مفيدًا؟

#self-hosted#bento#office-suite#nextcloud-alternative#open-source