عن المشروع

Gwageo Explorer هو تطبيق ويب مبني باستخدام Next.js يتيح استكشاف سجلات النجاح في اختبارات Gwageo خلال عصر جوسون بناءً على الموطن (Bon-gwan)، والشخصية، وفترة حكم الملك. وفقاً لملف README، يعتمد التطبيق على بيانات عامة من المعهد المركزي للدراسات الكورية، حيث يوفر 84,525 سجلاً، و2,976 مجموعة من المواطن، ومعلومات عن علاقات الشخصيات ومواقع المواطن. تشمل الميزات الرئيسية البحث عن الموطن واللقب مع صفحات تفصيلية، واستكشاف سجلات النجاح وأنواع الاختبارات والملوك والترتيب، وتفاصيل الشخصيات وشبكات علاقاتها، وخريطة لمواقع نشأة وإقامة المواطن في شبه الجزيرة الكورية، وحالة الاستقصاء لكل موقع مع روابط للأدلة الرسمية، وملخصات AI اختيارية تعتمد على NVIDIA NIM، بالإضافة إلى تصميم ويب متجاوب وتطبيق Android عبر Capacitor. من الناحية التقنية، يستخدم إطار عمل Next.js 16.3.1 (App Router, Turbopack) لمعالجة SSR والمسارات الديناميكية وAPI Route Handler. واجهة المستخدم تعتمد على React 19.2 وTypeScript 5، مع Tailwind CSS 4 وCSS tokens للتنسيق، وanime.js 4 لحركات الانتقال. طبقة البيانات تستخدم Prisma 7.9 وSQLite مع better-sqlite3 للاستعلام عن سجلات الاختبارات وبيانات المواطن. يتم تصور مواقع المواطن باستخدام بلاطات متوافقة مع OpenStreetMap وإسقاط Web Mercator. تعتمد ملخصات AI على API متوافق مع OpenAI من NVIDIA NIM مع تدفق البيانات عبر SSE من خلال خادم وكيل. أما نسخة الهاتف فهي تطبيق WebView (com.spear.gwageo) مبني على Capacitor 6 وAndroid SDK 36 وJDK 17. ولضمان الجودة، يتم استخدام ESLint 9 وtsc --noEmit وGradle. يتم التشغيل عبر تسلسل الأوامر: npm install، ثم npm run db:push، ثم npm run db:seed، وأخيراً npm run dev، حيث يعمل الخادم المحلي على http://localhost:3000. وللمعاينة بدون قاعدة بيانات، يمكن استخدام DATA_SOURCE=mock npm run dev، كما يمكن التحقق عبر npm run typecheck·lint·build وnpm run audit:release. يتضمن المستودع وثائق البنية التحتية، ودليل النشر، وتراخيص البيانات، وإشعارات الطرف الثالث. بخصوص التراخيص، كود التطبيق مرخص بموجب MIT، بينما تحتفظ بلاطات الخرائط وبيانات الطرف الثالث بتراخيصها الأصلية وشروط نسبها ولا يتم إعادة ترخيصها بموجب MIT. يتم تخزين وعرض المواقع التي لم يتم التأكد من أدلتها الرسمية أو تراخيصها المسموح بها كحالة "قيد المراجعة". تم إنشاء بيانات المشاهير لكل موطن عبر سكربت استخرج 4,549 شخصية من 367 موطناً من صناديق معلومات ويكيبيديا (CC BY-SA 4.0)، بينما تظل النسخة المدمجة من Namuwiki (6,341 شخصاً) للاستخدام المحلي فقط ولا يتم نشرها بسبب شروط CC BY-NC-SA. بالنسبة لإصدار Android، يتم البناء باستخدام Gradle assembleRelease بعد إعداد JDK 17 وAndroid SDK، ويكون المخرج في android/app/build/outputs/apk/release/app-release-unsigned.apk. وبما أن مفاتيح التوقيع للنشر غير مدرجة في المستودع، فإن ملف APK في GitHub Release هو بناء غير موقع (unsigned)، ويتطلب التثبيت العادي أو النشر في المتجر توقيع keystore منفصل.