النشر
يمكن نشر Papex على Vercel، أو أي بيئة Docker، أو خادم مستضاف ذاتيًا.
Vercel
- استورد المستودع إلى Vercel.
- عيّن متغيرات البيئة:
DATABASE_URL،AUTH_SECRET. - أمر البناء:
npm run build(المخرجات يتولّاها Next.js). - اربط Postgres عبر Vercel Storage، أو املأ
DATABASE_URLخارجيًا. - شغّل التهجيرات مرة واحدة بعد النشر:
npm run db:migrate. - تخزين PDF: نظام ملفات Vercel للقراءة فقط وقت التشغيل، لذا عيّن
STORAGE_DRIVER=s3ومتغيراتPAPEX_S3_*(انظر الإعداد ← التخزين). حينها يعيد المسار البثّي التوجيه إلى رابط كائن مُوقَّع مسبقًا بدل خدمة البايتات من القرص.
Docker / الاستضافة الذاتية
استخدم docker-compose.yml الجذري لتشغيل التطبيق + قاعدة البيانات معًا:
bash
docker compose up -dأو شغّل Postgres فقط في Docker وابنِ صورة Next.js بنفسك:
bash
docker build -t papex .
docker run -e DATABASE_URL=... -e AUTH_SECRET=... -p 3000:3000 papexموقع التوثيق
يُبنى التوثيق بـ VitePress إلى public/docs ويُخدَّم من التطبيق الرئيسي على /docs:
bash
npm run docs:build