# دومكورس – واجهة مستخدم متوافقة مع المتصفحات القديمة في /dumb (أزرار D-pad وشاشات صغيرة)

**URL:** <https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104>\
**Category:** Plugin\
**Created:** [4 فبراير 2026، 2:39ص UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104 "2026-02-04T02:39:08Z")\
**Posts on this page:** 18\
**Page:** 2

<div class="post-metadata">

**Author:** ![Ed\_S](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ed_s/32/134015_2.png) [@Ed\_S](https://meta.discourse.org/u/Ed_S)\
**Post date:** [5 فبراير 2026، 6:04م UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/21 "2026-02-05T18:04:06Z")

</div>

> [@ars18](#):
>
> يمكنهم فقط زيارة عنوان URL للمسار المختار. هل تقصد شيئًا آخر؟

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

---

<div class="post-metadata">

**Author:** ![ars18](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ars18/32/541869_2.png) [@ars18](https://meta.discourse.org/u/ars18)\
**Post date:** [5 فبراير 2026، 6:04م UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/22 "2026-02-05T18:04:48Z")

</div>

أسمعك. سأفكر في الأمر.

---

<div class="post-metadata">

**Author:** ![Ed\_S](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ed_s/32/134015_2.png) [@Ed\_S](https://meta.discourse.org/u/Ed_S)\
**Post date:** [5 فبراير 2026، 6:05م UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/23 "2026-02-05T18:05:14Z")

</div>

> [@merefield](#):
>
> لا تظن أنني أحمق

أعتذر، لم يكن القصد الإهانة، ولكني كنت منزعجًا من الرفض الظاهر.

---

<div class="post-metadata">

**Author:** ![ars18](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ars18/32/541869_2.png) [@ars18](https://meta.discourse.org/u/ars18)\
**Post date:** [6 فبراير 2026، 1:02ص UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/24 "2026-02-06T01:02:11Z")

</div>

### التحديثات

**سيكون هناك أخطاء، أبلغني بها.**

تحديثات في الوقت الفعلي

- أصبحت المواضيع في الصفحة الرئيسية تُحدَّث تلقائيًا الآن، وتظهر المواضيع الجديدة في الأعلى، وتُعاد ترتيب المواضيع التي تم الرد عليها مؤخرًا
- تظهر الردود من المستخدمين الآخرين في الوقت الفعلي أثناء قراءتك لموضوع ما
- يُظهر مؤشر “اسم المستخدم يكتب…” عندما يقوم شخص ما بإنشاء رد

المواضيع المقروءة/غير المقروءة

- تظهر المواضيع غير المقروءة الآن بخط عريض، وتظهر المواضيع المقروءة بلون أفتح وأرق
- تمت إزالة شارات الأرقام القديمة

عمليات الرفع (Uploads)

- يمكنك الآن إزالة ملف تم رفعه عن طريق النقر على زر X بجوار اسم الملف
- يعمل في كل من الردود والمواضيع الجديدة
- أصبح زر الرفع يعمل بشكل موثوق على شاشات اللمس الآن

إصلاحات الأخطاء

- لم يعد النقر على التعديل أو ردود الفعل (Reactions) ينقلك إلى أعلى الصفحة
- تظهر الردود الجديدة والتعديلات فورًا بعد النشر
- يأخذك إنشاء موضوع جديد إلى الموضوع بدلاً من العودة إلى الصفحة الرئيسية

---

<div class="post-metadata">

**Author:** ![ars18](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ars18/32/541869_2.png) [@ars18](https://meta.discourse.org/u/ars18)\
**Post date:** [6 فبراير 2026، 3:53م UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/25 "2026-02-06T15:53:01Z")

</div>

### تحديث لتطبيق Dumbcourse Companion APK

- تم إصلاح عمليات الرفع في طريقة العرض على الويب (webview)

> <https://github.com/alltechdev/dumbcourse-apk/commit/d890fff3d5aa4c2d2c4b6afb4cde55a8407fe5c2>

---

<div class="post-metadata">

**Author:** ![TripleU](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tripleu/32/465842_2.png) [@TripleU](https://meta.discourse.org/u/TripleU)\
**Post date:** [9 فبراير 2026، 2:09ص UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/26 "2026-02-09T02:09:59Z")

</div>

تمت إضافة تكامل **LanguageTool**! 🎯

بما أن هذا المكون الإضافي مخصص للهواتف الصغيرة والأنظمة القديمة، يمكن أن يكون الكتابة (والأخطاء المطبعية) مصدر إزعاج حقيقي. لذلك أضفت دعمًا لـ **LanguageTool** ([https://languagetool.org/](https://languagetool.org/)) لتنظيف النص تلقائيًا.

يمكنك استخدامه بعدة طرق:

- **واجهة برمجة التطبيقات العامة** (الإعداد الأسرع)
- **حساب LanguageTool الخاص بك + مفتاح واجهة برمجة التطبيقات**
- **LanguageTool مستضاف ذاتيًا** (أحضر نقطة النهاية + السر الخاص بك)

> **الإعدادات**
>
> ![Screenshot from 2026-02-08 21-05-17](https://global.discourse-cdn.com/meta/original/4X/3/b/1/3b13ef271e75fec12d6a5bd677daeaff6a687ade.png)

> **قبل النقر على زر النجمة**
>
> ![Screenshot from 2026-02-08 21-06-40](https://global.discourse-cdn.com/meta/original/4X/e/4/8/e48811e125585e211a3a46a5b321ef423e4eac57.png)

> **بعد النقر على زر النجمة**
>
> ![Screenshot from 2026-02-08 21-16-34](https://global.discourse-cdn.com/meta/original/4X/4/f/e/4fef9a7a3d07d61dcc4eed7175bea0730d23fab6.png)

انقر على النجمة الصغيرة ⭐ وسيقوم بإعادة كتابة النص عن طريق إصلاح كل ما يكتشفه (الهجاء، القواعد، المسافات، إلخ، اعتمادًا على خطتك أو وضع الاستضافة…).

أجواء “الذكاء الاصطناعي ولكن ليس الذكاء الاصطناعي”: إنه ذكي، لكنه ليس نموذج لغوي كبير يكتب منشورك نيابة عنك.

من حيث التكلفة: **مجاني تقريبًا / محدود المعدل** يعتمد على ما إذا كنت تستخدم واجهة برمجة التطبيقات العامة مقابل الاستضافة الذاتية. الاستضافة الذاتية = أنت تتحكم في الحدود.

أيضًا: قد أقوم بتحسين هذا ليصبح مكونًا إضافيًا منفصلاً لدعم LanguageTool فقط - إنها فكرة قائمة بذاتها قوية جدًا.

---

<div class="post-metadata">

**Author:** ![agemo](https://avatars.discourse-cdn.com/v4/letter/a/ac91a4/32.png) [@agemo](https://meta.discourse.org/u/agemo)\
**Post date:** [1 مارس 2026، 10:18م UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/27 "2026-03-01T22:18:53Z")

</div>

لقد جربت هذا بعد اقتراح @merefield (شكراً مرة أخرى) يا له من إضافة رائعة للمستخدمين “القدامى”!

يحتوي هذا المكون الإضافي على ترقيم صفحات **topic-list** وهو أمر رائع، ولكن هل هناك أي إمكانية في المستقبل للحصول على ترقيم صفحات **topic-posts** أيضاً؟

---

<div class="post-metadata">

**Author:** ![ばこん](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/%E3%81%B0%E3%81%93%E3%82%93/32/528615_2.png) [@ばこん](https://meta.discourse.org/u/%E3%81%B0%E3%81%93%E3%82%93)\
**Post date:** [13 مارس 2026، 10:16ص UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/28 "2026-03-13T10:16:46Z")

</div>

هل من الممكن دمج CSS مخصص في Dumbcourse؟

---

<div class="post-metadata">

**Author:** ![satonotdead](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/satonotdead/32/447830_2.png) [@satonotdead](https://meta.discourse.org/u/satonotdead)\
**Post date:** [23 يونيو 2026، 2:19ص UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/29 "2026-06-23T02:19:22Z")

</div>

لا تزال على قيد الحياة؟ هذه واحدة جيدة حقًا (!)

---

<div class="post-metadata">

**Author:** ![ars18](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ars18/32/541869_2.png) [@ars18](https://meta.discourse.org/u/ars18)\
**Post date:** [23 يونيو 2026، 3:54ص UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/30 "2026-06-23T03:54:41Z")

</div>

نعم، لا يزال نشطًا ومستخدَمًا على [Forum](https://forums.jtechforums.org/dumb)

لقد دمجناه في برنامجنا الإضافي الرئيسي:

> **[GitHub - JTech-Forums/JtechTools: Jtech — combined Discourse plugin bundle: dislike,...](https://github.com/JTech-Forums/JtechTools)**
>
> Jtech — combined Discourse plugin bundle: dislike, another-smtp, mini-mod, mod-categories, dumbcourse. One plugin.rb, six admin tabs, no namespace collisions.

---

<div class="post-metadata">

**Author:** ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)\
**Post date:** [23 يونيو 2026، 12:47م UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/31 "2026-06-23T12:47:07Z")

</div>

إذن، هل لم يعد المستودع المرتبط في المنشور الأصلي مدعومًا؟

بدافع الفضول، لماذا دمجتَهما؟ هل أنتِ بذلك تُجبرين مستخدمين من المجتمع على وظائف لا يحتاجونها أو لا يريدونها؟

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

---

<div class="post-metadata">

**Author:** ![ars18](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ars18/32/541869_2.png) [@ars18](https://meta.discourse.org/u/ars18)\
**Post date:** [23 يونيو 2026، 1:18م UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/32 "2026-06-23T13:18:42Z")

</div>

لا يزال مدعومًا. المستودع موجود في نفس الرابط على حسابي في GitHub كما كان من قبل. كان هذا أسهل بالنسبة لنا، لأن يكون كل شيء في مكان مركزي واحد.

يحتوي على كل ما نستخدمه، ولا نحتاج إلى إعادة بناء Discourse في كل مرة نحتاج فيها إلى شيء بسيط.

> [@merefield](#):
>
> هل تقصد أنك قد تجبر المستخدمين على استخدام وظائف لا يحتاجونها أو لا يريدونها؟

عذرًا، ماذا؟! 🤣

---

<div class="post-metadata">

**Author:** ![satonotdead](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/satonotdead/32/447830_2.png) [@satonotdead](https://meta.discourse.org/u/satonotdead)\
**Post date:** [23 يونيو 2026، 1:23م UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/33 "2026-06-23T13:23:54Z")

</div>

شكرًا لك، سأتحقق من ذلك. إن استخدام Dumbcourse هو الخيار الأمثل مع إصدار Tor Discourse. الآن لدي المزيد من الوظائف التي يمكنني متابعتها 😎

> [@merefield](#):
>
> هل أنت تضطر فعليًا المستخدمين في المجتمع إلى استخدام وظائف لا يحتاجونها أو لا يريدونها؟

يرجى التحقق من المستودع، فكل وظيفة لها مفتاح خاص لتفعيلها أو تعطيلها. أعتقد أنهم يقومون بعمل رائع هنا.

كما يمكن لأي شخص المساهمة عبر طلبات السحب (PR) أيضًا.

أتفق مع فكرة وجود إضافات مختلفة لمجتمع Discourse، لكنني أفهم تمامًا أنهم جمعوا جميعها ضمن مجتمعهم الخاص أيضًا.

---

<div class="post-metadata">

**Author:** ![ars18](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ars18/32/541869_2.png) [@ars18](https://meta.discourse.org/u/ars18)\
**Post date:** [23 يونيو 2026، 1:37م UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/34 "2026-06-23T13:37:00Z")

</div>

آه، حسنًا. أعتقد أنني كنت متعبًا فقط، وقد أدركت الآن ما كان يقصده.

كنتَ تعتقد أنني أحاول دفع دمجنا الكامل للبرنامج المساعد. عذري عن صياغتي.

لا يزال Dumbcourse المستقل متاحًا في مكانه المعتاد:

> **[GitHub - TripleU613/dumbcourse: A plugin to allow your forums UI to support dpad...](https://github.com/TripleU613/dumbcourse)**
>
> A plugin to allow your forums UI to support dpad and old browsers

ظننت أنك تقصد فرضه على مستخدمي jtechforums، آسف 🙂

بالنسبة لحالة الاستخدام الخاصة بنا، كانت العديد من الميزات المحددة التي نحتاجها صعبة الإدارة كبرامج مساعدة منفصلة، لذا قمنا بإنشاء شيء مخصص لنا، لكن جميع أكواد Dumbcourse المستقلة لا تزال موجودة في الرابط أعلاه.

يمكنك عمل Fork، أو إذا كنت ترغب في المساهمة، يمكنني طلب من @TripleU إلغاء الأرشفة.

---

<div class="post-metadata">

**Author:** ![satonotdead](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/satonotdead/32/447830_2.png) [@satonotdead](https://meta.discourse.org/u/satonotdead)\
**Post date:** [12 أغسطس 2026، 12:18ص UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/35 "2026-08-12T00:18:18Z")

</div>

هل يضيف هذا الملحق الإضافي الجديد “قائمة مراجعة المنشور الأول” إلى الشريط الجانبي، ربما من خلال تنفيذ الملحق المصغر الخاص بهم؟ عذراً إذا لم يكن كذلك، أنا أحاول معرفة الملحق/المكون الذي يضيف هذا الزر.

أعود مرة أخرى إلى discoursedumb، سأختبره على تور حيث أعتقد أنه يمكن أن يبرز حقاً. شكراً لك على صيانته.

---

<div class="post-metadata">

**Author:** ![satonotdead](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/satonotdead/32/447830_2.png) [@satonotdead](https://meta.discourse.org/u/satonotdead)\
**Post date:** [27 أغسطس 2026، 3:12م UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/36 "2026-08-27T15:12:23Z")

</div>

أود فقط أن أذكر أن الإضافة تعرض حاليًا خطأً في التوافق يتعلق بـ `id:discourse.modify-class-model`.

بصراحة، أنا فقط بدأتُ في تطوير الإضافات ومكونات السمات بمساعدة الذكاء الاصطناعي. أتمنى أن أتمكن قريبًا من تقديم طلبات دمج (PRs) لحل مثل هذه المواقف. وفي الوقت الحالي، ما زلت أتعلم.

Dumbcourse مفيدة جدًا لنا. آمل أن تتمكنوا من تحديثها.

---

<div class="post-metadata">

**Author:** ![ars18](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/ars18/32/541869_2.png) [@ars18](https://meta.discourse.org/u/ars18)\
**Post date:** [28 أغسطس 2026، 5:36ص UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/37 "2026-08-28T05:36:32Z")

</div>

سعيدٌ لسماع أنك تستمتع

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

إذا أعجبك في jtechtools dumbcourse (الإضافة الرئيسية)، فأعتقد أنني أصلحت تلك المشكلة. يمكن نقلها إلى النسخة المستقلة أيضًا.

طلبات الدمج من الذكاء الاصطناعي مرحَّب بها بشدة، شريطة أن تقوم بتشغيل الاختبارات الكاملة بشكل صحيح على نسخة discourse تعمل فعليًا (أنا أبدأ فقط بالحد الأدنى المطلوب محليًا).

---

<div class="post-metadata">

**Author:** ![TripleU](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tripleu/32/465842_2.png) [@TripleU](https://meta.discourse.org/u/TripleU)\
**Post date:** [30 أغسطس 2026، 3:58م UTC](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104/38 "2026-08-30T15:58:51Z")

</div>

أهلاً يا شباب، هذه الحالة غريبة نوعًا ما، لكن ها هي:

بما أننا منتدى تقني، فنحن نعرف طريقنا إلى حد ما حول إضافات Discourse — على الأقل بما يكفي لكوننا خطيرين…

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

**Dumbcourse** انضم إلى الرحلة أيضًا.

إذن، هذا هو ما يوجد حاليًا بداخلها:

## أدوات JTech

إضافة Discourse مجمعة واحدة، **9 وحدات** ، وكل وحدة لها مفتاح تشغيل/إيقاف خاص بها.

1. **عدم الإعجاب / التفاعلات الشبحية**  
في الفئات المحددة، تصبح الإعجابات في الأساس إعجابات شبحية. لا تُحتسب ولا تظهر بشكل طبيعي، وهي مخفية عن السجل، وإزالة من لوحات الصدارة، وتنظيف تلقائي للإشعارات ذات الصلة. هناك أيضًا قائمة سماح اختيارية للمجموعات، وسجل تدقيق، ومهمة مسح.

2. **SMTP بديل**  
يتيح لك تكوين وسيط بريد خارجي بديل بخادمه الخاص، ومنفذه، وإعدادات TLS/mصادقة، وإعادة كتابة اختيارية لنطاق المرسل، ومواعيد انتهاء صلاحية مخصصة.

3. **Mini-mod**  
يمنح مشرفي مجموعات الفئات بعض قدرات الإشراف الإضافية، مثل إنشاء/تعديل الفئات، تعديل/نقل المواضيع، وما إلى ذلك. لكل صلاحية مفتاح خاص بها، مع قيود حول قدرات مستوى TL4.

4. **أدوات المشرفين / فئات المشرفين**  
هذه مجموعة أكبر من أدوات الموظفين، وتشمل:

5. **Dumbcourse**  
واجهة أمامية SPA مبسطة للمنتدى في `/dumb`.

6. **تعديلات المترجم**  
بعض التصحيحات وتغييرات السلوك لإضافة المترجم الرسمية، بما في ذلك ملء اكتشاف اللغات الأجنبية وبقعة أخرى من التعديلات.

7. **البحث الذكي**  
يستخدم WordNet + توسيع المرادفات للمصطلحات التقنية عندما تُعيد نتيجة البحث عددًا قليلًا جدًا من النتائج.

8. **إشعارات منبثقة سطح المكتب**  
إشعارات toast بنمط Jelly للإشعارات الجديدة للمنتدى. سطح المكتب فقط، اختيار فردي لكل مستخدم، مع مهلة قابلة للضبط.

9. **Disteleplus**  
هذه تحولت إلى شيء كبير.

كل ميزة فردية لها قسم إعدادات خاص بها ويمكن إيقافها بشكل مستقل.

 ![image](https://global.discourse-cdn.com/meta/original/4X/f/3/e/f3eb5ebd92b3193e9b8aa987c8f2cca63336b3b7.png)

إذن نعم، إنه نوع من صفقة الحزمة — لكنني أعتقد أن معظم هذه الميزات مفيدة بما يكفي بحيث يمكن لمجتمعات أخرى الحصول على بعض الفائدة منها أيضًا.

إذا أراد أحد تقسيم وحدات فردية إلى إضافات منفصلة، أو استنساخها، أو صيانة نسخهم الخاصة، فتقدموا على مهلكم.

نحن بوضوح ما زلنا ندير الإضافة الرئيسية بأنفسنا، لكننا لا ندّعي أننا أكثر مطوري إضافات Discourse احترافية في العالم أيضًا، تم استخدام قدر معقول من الذكاء الاصطناعي أثناء بناء هذا، لذا توقعوا أخطاء/نفايات، وحالات حافة غريبة، وربما بعض القرارات المشكوك فيها هنا وهناك.

المساهمات، والإصلاحات، والتنظيف، والتحسينات مرحب بها جدًا.

آمل أن تسامحوني على النهج المجنون قليلاً لوضع كل هذا في إضافة واحدة.

وبالطبع، التقدير لجميع أعضاء JTech الذين ساهموا فيه حتى الآن.

* * *

> **[GitHub - JTech-Forums/JtechTools: Jtech — combined Discourse plugin bundle: dislike,...](https://github.com/JTech-Forums/JtechTools)**
>
> Jtech — combined Discourse plugin bundle: dislike, another-smtp, mini-mod, mod-categories, dumbcourse. One plugin.rb, six admin tabs, no namespace collisions.

[Previous page](https://meta.discourse.org/t/dumbcourse-old-browser-friendly-ui-at-dumb-d-pad-small-screens/395104.md?page=1)
