قَريض — ديوان الشعر العربي ومساجلته

القَريضُ اسمٌ قديمٌ للشعر. وهذا ديوانٌ للشعر العربيّ يُقرأ ويُبحث فيه، ومساجلةٌ تُلعب عليه.

238,733 قصيدة 3,369,701 بيت 6,941 شاعرًا 1,713,459 بيتًا صالحًا للمساجلة

القاعدة

يُلقي الحاسوبُ بيتًا، ويُجاب ببيتٍ آخرَ من الديوان يبدأ برويِّ الأوّل: الحرفِ الذي تُبنى عليه القافية، لا آخرِ حرفٍ مكتوب. الحكمُ على مذهب القدماء، ولا يُقبل القريب.

أنا ابنُ الفَيافي أنا ابنُ القَوافي  ⁂  أنا ابنُ السُروجِ أنا ابنُ الرِعانِ المتنبي · الرويُّ النون

ما فيه

القراءة

تصفّحٌ بالعصر والبحر والغرض والرويّ. ديوانُ كلِّ شاعر. والقصيدةُ صفحةً كما تُطبع، أو في وضع قراءةٍ تنزوي فيه الأدواتُ كلُّها.

البحث

FTS5 على ثلاثة ملايين بيت، بمُطبِّعٍ عربيٍّ واحد: يُصيب النصَّ بتشكيلٍ وبغيره، وبأيّ ألف.

المساجلة

ضدّ الديوان، بعدٍّ ووقت، وتُضيَّق بعصرٍ أو بحرٍ أو شاعر. أو ضدّ صديقٍ في غرفة، والحكمُ عند الخادم لا عند اللاعب.

الحفظ

المختاراتُ قائمةٌ في المتصفّح بلا حساب. والدواوينُ رفوفٌ مُسمّاةٌ مرتَّبةٌ على حساب، تُشارَك وتُلعب فيها المساجلة.

التحفيظ

تمرينٌ على القصيدة حتى تثبت، وعدٌّ لما صار يُجاب عليه من الحروف.

على الهاتف

بناءُ أندرويد من المصدر نفسه، أصولُه محزومةٌ فيفتح بلا شبكة.

صور

الصفحة الأولى
الصفحة الأولى: بيتُ اليوم، والعدد، والمختاراتُ المنظومة.
القصيدة
القصيدة صفحةَ ديوان
مساجلة
مساجلة، على سلسلة الحروف
الشعراء
الشعراءُ على حروف الشهرة
البحور
البحورُ الستّةَ عشر، ولكلٍّ شاهد
الصفحة الأولى على الهاتف القصيدة على الهاتف المساجلة على الهاتف

المتن

الأبياتُ من arbml/ashaar. تُدخَل في مِعلَمٍ واحدٍ من SQLite للقراءة فقط، ولا يُعاد نشرُها: يُبنى المِعلَم محلّيًّا في نحو ثلاث دقائق.

المقروء254,630 قصيدة
المحذوف15,891 قصيدة مكرّرة، و6 قصائد بلا أبيات
الباقي238,733 قصيدة · 3,369,701 بيتًا · 6,941 شاعرًا
الصالح للمساجلة1,713,459 بيتًا — له شطران ورويٌّ يُستخرج
بلا بحر39.8% من القصائد

التشغيل

يلزم Node 24 فما فوق.

git clone https://github.com/ZahakJ/qarid && cd qarid
npm install
cp .env.example .env          # اضبط PUBLIC_ORIGIN
npm run ingest:fetch          # arbml/ashaar → data/raw/
npm run ingest                # data/qarid.db، نحو 3 دقائق
npm run dev:server & npm run dev   # http://127.0.0.1:5751

بلا متن: npm run ingest:fixture يبني عيّنةً صغيرة.

في الإنتاج يربط الخادمُ على loopback وحده ويقدّم العميلَ المبنيَّ بنفسه؛ يُوضع أمامه وكيلٌ أو نفقٌ للـTLS. وdeploy/qarid.service وحدةُ systemd للمستخدم.

الفحوص:

npm run typecheck && npm test && npm run build && npm run smoke

البناء

المتنمِعلَمُ SQLite واحدٌ للقراءة فقط، بفهرس FTS5.
الخادمHono على node:sqlite، يُشغَّل TypeScript مباشرةً بلا بناء.
العميلVite وReact، توجيهٌ بالكسر، من اليمين إلى اليسار. أميري للشعر، وعارف رقعة للعناوين.
المشتركمُطبِّعٌ عربيٌّ واحد، ومنسِّقُ أعدادٍ واحد، ومولِّدٌ عشوائيٌّ مبذور، ومخطّطاتُ zod مرجعًا لكلِّ ما على السلك.

الرخصة

AGPL-3.0-or-later. من شغّل نسخةً معدَّلةً خدمةً على الشبكة فعليه أن يتيح مصدرَها. المتنُ على شروط أصحابه، والخطوطُ OFL.