چطور از Lovable به Mythex مهاجرت کنیم (کد، داده و دامنه)
برای مهاجرت از Lovable به Mythex، کدتان را از طریق یکپارچهسازی GitHub از Lovable بیرون بیاورید، سپس با وصل کردن مخزن یا وارد کردن یک آرشیو آن را به یک پروژه Mythex بیاورید، رازها را دوباره وارد کنید و پیش از انتشار در Preview آزمایش کنید. فرانتاند معمولاً بدون تغییر منتقل میشود. تصمیمهای واقعی درباره بکاند است: پروژه Supabase موجودتان را نگه دارید، یا دادهها را به جای دیگری ببرید.
این راهنما کل انتقال را به ترتیب مرور میکند و درباره بخشهایی که کار میبرند صادق است.
پیش از شروع: واقعاً چه چیزی منتقل میشود
یک اپ Lovable چند چیز است و هر کدام متفاوت منتقل میشوند.
| بخش | کجا زندگی میکند | چطور منتقل میشود |
|---|---|---|
| کد فرانتاند | پروژه Lovable شما | همگامسازی با GitHub یا دانلود کد |
| پایگاه داده و کاربران | Lovable Cloud یا پروژه Supabase خودتان | نگه داشتن، یا خروجی گرفتن و بازیابی |
| فایلهای آپلودشده | فضای ذخیره Lovable Cloud یا Supabase | نگه داشتن، یا کپی جداگانه |
| توابع سمت سرور | Supabase Edge Functions، اگر استفاده میکنید | روی Supabase بماند، یا بازنویسی شود |
| رازها و کلیدهای API | تنظیمات Lovable / Supabase | دستی دوباره وارد شوند |
| دامنه | ارائهدهنده DNS شما | به هاست جدید اشاره کند |
این جدول را برای اپ خودتان بنویسید. ده دقیقه وقت میگیرد و بیشتر غافلگیریها را پیشگیری میکند.
گام ۱: کدتان را از Lovable بیرون بیاورید
مستندات Lovable (از سپتامبر ۲۰۲۶) دو راه خروج را توصیف میکند:
- همگامسازی با GitHub. Lovable میتواند پروژهتان را با GitHub بهصورت دوطرفه همگام کند و مستنداتش پشتیبانی از github.com را در همه پلنها ذکر میکند. GitHub را در Lovable وصل کنید تا کدتان در مخزنی که مالکش هستید قرار گیرد. توجه داشته باشید که Lovable هر بار یک شاخه را همگام میکند.
- دانلود کدبیس. در پلنهای پولی Lovable میتوانید کد را مستقیم از Project settings → Git دانلود کنید.
برای یک مهاجرت، GitHub مسیر بهتری است: تاریخچه کامل را دارید و میتوانید همچنان همگامسازی کنید تا وقتی تنظیمات جدید را آزمایش میکنید. برای مراحل فعلی، راهنمای یکپارچهسازی GitHub در Lovable را ببینید.
پیش از ترک Lovable، مخزن را باز کنید و دنبال اینها بگردید:
- فایل
.envیا.env.exampleکه متغیرهای محیطی مورد انتظار اپ را فهرست میکند - پوشه
supabase/که ممکن است مهاجرتهای پایگاه داده و کد Edge Function را داشته باشد - اسکریپتهای
package.jsonکه نشان میدهند اپ چطور ساخته و اجرا میشود
گام ۲: درباره بکاند تصمیم بگیرید
این مهمترین انتخاب است. اپهای Lovable معمولاً از Supabase برای پایگاه داده و ورود استفاده میکنند، یا از طریق یک پروژه Supabase که خودتان وصل کردهاید، یا از طریق Lovable Cloud.
گزینه A: پروژه Supabase خودتان را نگه دارید
اگر اپ شما از قبل با پروژه Supabase خودتان حرف میزند، این سادهترین مسیر است. کد اپ همچنان همان URL Supabase و همان کلیدها را صدا میزند، پس دادهها، کاربران و فایلها دقیقاً همانجا میمانند. فقط فرانتاند را منتقل میکنید.
گزینه B: از Lovable Cloud خارج شوید
اگر اپ شما از Lovable Cloud استفاده میکند، Lovable یک خروجی پایگاه داده را زیر More → Cloud → Overview → Advanced settings مستند کرده است. طبق مستندات Lovable (از سپتامبر ۲۰۲۶):
- خروجی شامل کل پایگاه داده، ساختار و دادههاست، از جمله حسابهای کاربری و هش گذرواژههایشان.
- فایلهای ذخیرهسازی، کد Edge Function یا رازهای پروژهتان را شامل نمیشود. تنظیمات ارائهدهنده ورود هم شامل نمیشود.
- خروجیها تا پایگاه دادههای ۱۵ گیگابایتی را پوشش میدهند، فایل میتواند حداکثر ۵ گیگابایت باشد، و میتوانید هر ۲۴ ساعت یک خروجی درخواست کنید.
- مهاجرت یککلیکی از Cloud به Supabase وجود ندارد، و مقصدهای پشتیبانیشده برای انتقال بکاند Cloud، Supabase مدیریتشده یا Supabase خودمیزبان هستند.
پس راه عملی معمولاً این است: خروجی را در پروژه Supabase خودتان بازیابی کنید، سطلهای ذخیرهسازی، Edge Functions و تنظیمات ورود را همانجا دوباره بسازید، و سپس آن را مانند گزینه A در نظر بگیرید. جزئیات را در تنظیمات پیشرفته Lovable ببینید.
گزینه C: همه چیز را به پایگاه داده Mythex ببرید
Mythex میتواند به یک پروژه یک پایگاه داده Postgres اختصاصی بدهد. انتقال دادهها به آنجا ممکن است، اما یعنی باید هر جایی از اپ را که از کتابخانه کلاینت Supabase استفاده میکند بازنویسی کنید، و چون Mythex ورود کاربر نهایی داخلی ندارد، باید یک ارائهدهنده ورود جداگانه هم وصل کنید. این یک بازسازی واقعی بکاند است، نه یک انتقال. این کار را بعداً انجام دهید، اگر اصلاً، وقتی اپ روی Mythex با Supabase اجرا میشود.
گام ۳: کد را وارد Mythex کنید
یک پروژه جدید و خالی در Mythex بسازید. سپس یکی از این دو کار را انجام دهید:
- یک آرشیو وارد کنید. به Project settings → Export → Import into this project بروید و یک فایل
.zip،.tar.gzیا.tgzبارگذاری کنید. دکمه Download ZIP در GitHub فایلی میدهد که اینجا کار میکند. - GitHub را وصل کنید و pull کنید. GitHub را در Project settings وصل کنید، مخزن را لینک کنید و pull بزنید. همگامسازی GitHub یک قابلیت پلن Pro است.
Import فایلهای پروژه را جایگزین میکند، پس از یک پروژه خالی استفاده کنید. هر فایل .env داخل آرشیو هنگام ورود حذف میشود، پس هیچ رازی بهطور تصادفی منتقل نمیشود. پس از ورود موفق، Mythex میتواند یک گفتوگوی جدید باز کند که در آن عامل وابستگیها را نصب میکند، میفهمد اپ چطور اجرا شود و Preview را راه میاندازد. مثل هر گفتوگوی دیگری میتوانید آن را هدایت کنید. جزئیات در بعد از ورود است.
اگر Preview خودش بالا نیامد، بپرسید:
این پروژه از Lovable خروجی گرفته شده. یک اپ React + TypeScript + Tailwind است که از Supabase استفاده میکند. وابستگیها را نصب کن، دستور توسعه را از package.json پیدا کن و Preview را راه بینداز. هنوز هیچ کد اپ را تغییر نده.
گام ۴: رازها را دوباره وارد کنید
Project settings → Secrets را باز کنید و هر مقداری را که اپ لازم دارد اضافه کنید. برای اپی که با Supabase کار میکند، معمولاً یعنی URL پروژه Supabase و کلید عمومی (anon یا publishable). نامها را از .env.example یا از جایی که کد آنها را میخواند بردارید.
دو قانون:
- فقط کلیدهای عمومی به متغیرهای فرانتاند تعلق دارند. در یک اپ Vite، هر چیزی با پیشوند
VITE_در جاوااسکریپتی قرار میگیرد که هر بازدیدکننده دانلود میکند. - هرگز کلید service role در Supabase را در کد فرانتاند قرار ندهید. اگر یک تابع سمت سرور به آن نیاز دارد، باید سمت سرور بماند.
سپس از عامل بخواهید تأیید کند که اپ آنها را میخواند:
بررسی کن این اپ کدام متغیرهای محیطی را میخواند. هر کدام را که هنوز در رازهای پروژه تنظیم نشده فهرست کن، و مقادیرشان را چاپ نکن.
راهنمای ما درباره متغیرهای محیطی و رازها تفاوت مقادیر عمومی و خصوصی را توضیح میدهد.
گام ۵: پیش از جابهجایی هر چیز آزمایش کنید
اپ Lovable شما هنوز زنده است، پس عجلهای نیست. نسخه Mythex را در Preview با جریانهای واقعی آزمایش کنید:
- ثبتنام، ورود، خروج و بازنشانی گذرواژه
- ساخت، ویرایش و حذف یک رکورد
- بارگذاری یک فایل، اگر اپ شما این کار را میکند
- هر چیزی که یک Edge Function یا API شخص ثالث را صدا میزند
یک تنظیم در Supabase است که بهراحتی از قلم میافتد: redirect URLs مجاز برای ایمیلهای ورود و بازنشانی گذرواژه. آدرسهای Preview و منتشرشده Mythex را آنجا اضافه کنید، وگرنه ورودها به دامنه قدیمی برمیگردند.
دستور /test در Mythex باعث میشود عامل Preview شما را مثل یک کاربر کلیک کند و جریانهای خراب را گزارش دهد. راهنمای ما درباره آزمایش اپ پیش از راهاندازی چکلیست کاملتری دارد.
گام ۶: منتشر کنید و دامنه را جابهجا کنید
وقتی همه چیز کار کرد، از فضای کاری منتشر کنید تا آدرس <slug>.mythex.app بگیرید. دوباره در آنجا آزمایش کنید، چون اپ منتشرشده یک کپی جدا از پروژه شماست.
در پلن Pro میتوانید دامنه خودتان را وصل کنید. رکوردهای DNS را در ارائهدهنده دامنه بهروز کنید، آدرس جدید را به redirect URLs مجاز Supabase اضافه کنید، و فقط بعد از آن نسخه Lovable را خاموش کنید. راهنمای ما درباره اتصال دامنه سفارشی جزئیات DNS را پوشش میدهد.
اشتباههای رایج
- انتقال همزمان پایگاه داده و فرانتاند. ابتدا فرانتاند را منتقل کنید، ثابت کنید با بکاند موجود کار میکند، و بعد درباره داده تصمیم بگیرید.
- فراموش کردن Edge Functions. اگر اپ توابع Edge مربوط به Supabase را صدا میزند، یا روی Supabase میمانند یا باید بهعنوان کد سرور بازنویسی شوند. آنها داخل یک فرانتاند Vite اجرا نمیشوند.
- گذاشتن کلید service role در فرانتاند. این کلید دسترسی کامل به پایگاه داده را به هر کسی که devtools را باز کند میدهد.
- جا افتادن redirect URLs ورود. ورود در Preview کار میکند و روی دامنه واقعی شکست میخورد.
- جابهجایی DNS پیش از آزمایش آدرس منتشرشده. ابتدا آدرس
mythex.aiرا آزمایش کنید؛ برگرداندن تغییرات DNS زمان میبرد. - وارد کردن در پروژهای که از قبل کار در آن هست. Import فایلها را جایگزین میکند. از یک پروژه تازه استفاده کنید.
کی ماندن در Lovable منطقی است
درباره دلیل انتقال صادق باشید. Lovable ویرایش بصری نقطهای روی Preview و یک بکاند محصولمحور با Lovable Cloud ارائه میدهد، و Mythex هیچکدام را ندارد. اگر روزانه به آنها تکیه دارید، انتقال بیشتر از سودش هزینه دارد. Mythex برای زمانی بهتر است که یک ویرایشگر کد و ترمینال واقعی کنار گفتوگو میخواهید، یک موجودی اعتبار واحد برای ساخت و میزبانی، یا اجرای پشتهای دیگر. راهنمای جایگزینهای Lovable و صفحه Mythex در برابر Lovable را برای مقایسه دقیقتر ببینید.
چکلیست مهاجرت
- همه بخشهای اپ فهرست شد: کد، پایگاه داده، کاربران، فایلها، توابع، رازها، دامنه
- کد با یک مخزن GitHub که مالکش هستید همگام شد
- تصمیم بکاند گرفته شد (نگه داشتن Supabase، یا خروجی از Lovable Cloud)
- کد در یک پروژه خالی Mythex وارد شد و Preview اجرا شد
- رازها دوباره وارد شدند؛ هیچ کلید خصوصی در متغیرهای
VITE_نیست - redirect URLs ورود برای آدرسهای جدید بهروز شد
- ثبتنام، ورود، جریانهای اصلی داده و بارگذاریها در Preview آزمایش شدند
- منتشر و دوباره روی آدرس
mythex.aiآزمایش شد - DNS جابهجا شد؛ اپ قدیمی فقط پس از تأیید اپ جدید خاموش شد
برای بخش Mythex، همگامسازی با GitHub، خروجی و ورود را در مستندات ببینید.
پرسشها
آیا میتوانم یک پروژه Lovable را بدون بازسازی به Mythex ببرم؟
معمولاً بله. Lovable اجازه میدهد کد پروژهتان با GitHub همگام شود، و Mythex میتواند این کد را از یک مخزن GitHub متصل یا از یک آرشیو .zip یا .tar.gz به یک پروژه وارد کند. فرانتاند همانطور که هست منتقل میشود؛ کار اصلی در رازها، بکاند و دامنه است.
پایگاه داده Supabase یا Lovable Cloud من چه میشود؟
پایگاه داده بخشی از کد نیست. اگر اپ شما از پروژه Supabase خودتان استفاده میکند، پس از انتقال میتواند همچنان از آن استفاده کند. اگر از Lovable Cloud استفاده میکند، Lovable خروجی پایگاه داده را مستند کرده و میگوید مقصدهای پشتیبانیشده برای انتقال آن بکاند، Supabase مدیریتشده یا Supabase خودمیزبان هستند.
آیا کاربرانم باید دوباره ثبتنام کنند؟
اگر اپ همچنان از همان بکاند احراز هویت استفاده کند، مثلاً همان پروژه Supabase، نه. خروجی پایگاه داده Lovable Cloud شامل حسابهای کاربری و هش گذرواژههاست، اما انتقال احراز هویت به ارائهدهندهای دیگر کار بزرگتری است و باید جداگانه برنامهریزی و آزمایش شود.
آیا Mythex مثل Lovable Cloud ورود کاربر و پرداخت داخلی دارد؟
خیر. Mythex ورود کاربر نهایی داخلی یا Stripe ارائه نمیدهد. عامل ارائهدهندگان و کلیدهای خودتان را به اپ وصل میکند؛ به همین دلیل نگه داشتن یک پروژه Supabase موجود اغلب سادهترین مسیر است.