قبل أن تنتقل: هل الانتقال مناسب لك؟
v0 ممتاز في توليد الواجهات، ويأتي مع ربط مباشر بمنصة Vercel للنشر بنسخة معاينة ونسخة إنتاج، ومع تكاملات بنقرة واحدة لقواعد Neon و Supabase و Upstash من سوق Vercel. إذا كنت مرتاحًا لهذا الثنائي، فلا يوجد ما يجبرك على الانتقال.
كثيرون يصلون إلى نقطة يكون فيها عندهم واجهة رائعة من v0 لكن بلا منطق خلفي كامل: لا تسجيل دخول جاهز من v0 نفسه، ولا لوحة إدارة، ولا قاعدة مربوطة. هنا يبدأ الانتقال يصبح مفيدًا، لأنك في أوترا تكمل نفس الكود بطلبات عربية حتى يصبح تطبيقًا يعمل بخادمه وقاعدته في مكان واحد.
- مثال: عيادة أسنان في الدمام صممت صفحة هبوط في v0 وتريد الآن نظام مواعيد حقيقيًا خلفها.
- مناسب إذا كنت تريد أن تبقى البيانات والخادم والواجهة في مشروع واحد بدل خدمات متفرقة.
- إن كان مشروعك يعتمد بعمق على خدمات Vercel الخاصة، فقيّم أولًا ما يحتاج بديلًا.
نعمل على تجهيز لقطات شاشة حقيقية وفيديو قصير يشرح خطوات الانتقال من v0 إلى أوترا، وسنضيفها هنا قريبًا. حتى ذلك الحين اتبع الخطوات المكتوبة بالترتيب.
ما الذي ينتقل وما الذي لا ينتقل
| العنصر | ينتقل؟ | ملاحظات |
|---|---|---|
| الكود | نعم | مزامنة GitHub في v0 تدعم الفروع وطلبات الدمج. يمكن أيضًا تنزيل الملفات من عارض الكود، لكن تنزيل المشروع كاملًا كملف واحد غير مؤكد في المستندات. |
| التصميم | نعم | هو أقوى ما في v0، وينتقل كاملًا لأنه في الكود. |
| بيانات قاعدة البيانات | تبقى أو تُنقل | إذا كانت القاعدة على Neon أو Supabase فهي حسابك. تتصل بها من أوترا بمفاتيحها، أو تنقل البيانات إلى قاعدة داخل المشروع. |
| حسابات المستخدمين | يعتمد | لم نجد في v0 نظام دخول خاصًا به، فإن وُجد دخول فهو غالبًا عبر Supabase ويبقى كما هو. |
| النطاق | نعم | إذا كان مربوطًا في Vercel، تغيّر سجلاته إلى سجلات أوترا. رابط vercel.app لا ينتقل. |
| الروابط والسيو | نعم بشرط | بنفس المسارات وعلى نطاقك. |
| المدفوعات | إعادة ربط | المفاتيح و webhook تُضاف للعنوان الجديد. |
| الأسرار ومفاتيح API | لا | متغيرات البيئة في Vercel لا تنتقل مع المستودع. تعيدها في «البيانات السرية». |
خطوات الانتقال
فعّل مزامنة GitHub في v0
من مشروعك في v0 اربط حساب GitHub وأنشئ مستودعًا للمشروع. تأكد أن الفرع الرئيسي يحمل آخر نسخة عملت عليها، وليس فرعًا جانبيًا من تجربة سابقة.
انسخ أسماء متغيرات البيئة
من إعدادات المشروع في Vercel اكتب أسماء المتغيرات، خصوصًا التي أضافها تكامل القاعدة تلقائيًا مثل رابط الاتصال بـ Neon أو مفاتيح Supabase.
قرّر مصير القاعدة
الأسهل في البداية إبقاء القاعدة الحالية والاتصال بها. لاحقًا تنقل البيانات إلى PostgreSQL داخل المشروع إن أردت كل شيء في مكان واحد.
استورد المستودع في أوترا
أنشئ مشروعًا جديدًا في أوترا واختر الاستيراد من GitHub. ستقرأ أوترا المشروع وتثبّت حزمه وتشغّله على رابط معاينة.
أضف الأسرار بالأسماء نفسها
من «البيانات السرية» أضف المتغيرات كما كانت في Vercel، فلا يحتاج الكود أي تعديل لقراءتها.
أكمل ما ينقص الواجهة
هنا الفرق الحقيقي: اطلب الأجزاء الخلفية التي لم تكن موجودة، مثل حفظ المواعيد ولوحة إدارة وتسجيل دخول للموظفين.
انشر وغيّر سجلات النطاق
انشر في أوترا، جرّب على الرابط الفرعي، ثم احذف سجلات Vercel عند مسجّل النطاق وأضف سجلات أوترا من «نطاق مخصّص».
استوردت صفحة عيادة الأسنان من v0. أبقِ التصميم كما هو تمامًا، وأضف نظام مواعيد حقيقيًا: نموذج حجز يحفظ في قاعدة البيانات، ولوحة للموظفين تعرض مواعيد اليوم، مع واجهة عربية من اليمين لليسار.
أول 3 أشياء بعد الانتقال
- قارن الصفحة الرئيسية في أوترا مع نسخة Vercel جنبًا إلى جنب على الجوال، فأي فرق في الخطوط أو المسافات يظهر فورًا.
- جرّب إرسال نموذج واحد على الأقل وتأكد أن السجل ظهر في معاينة «قاعدة البيانات».
- أوقف النشر التلقائي في Vercel من المستودع نفسه حتى لا تبقى نسختان تتحدثان مع القاعدة نفسها.
حافظ على ترتيبك في البحث
مشاريع v0 المنشورة على Vercel تكون إما على رابط vercel.app أو على نطاق مخصّص. النطاق المخصّص هو ما يحمل قيمتك في البحث، فإذا نقلت سجلاته إلى أوترا وأبقيت المسارات كما هي، فمحركات البحث ترى الموقع نفسه بخادم جديد.
انتبه لشيء خاص بالواجهات المولّدة: بعض الصفحات قد تكون معتمدة على JavaScript لعرض النص. اطلب من أوترا التأكد أن العنوان والوصف والنص الأساسي لكل صفحة عامة يظهر في الصفحة نفسها، وأن لكل صفحة وصفًا فريدًا.
- ابقِ مسارات مثل
/servicesو/doctorsكما هي. - أي مسار تغيّره يحتاج تحويل 301.
- راجع Search Console بعد أسبوع للتأكد من عدم ظهور أخطاء 404 جديدة.