نحوه دیپلوی(Deploy) وب اپ(web app)پروژه فِلِت(flet) در کلود فلر(cloudflare)

درود بر همراهان و برنامه نویسان عزیزی که درحال مطالعه این نوشته هستند.در این نوشته، بنده سعی کرده ام تا نحوه دیپلوی کردن وب اپ پروژه فلت را در کلود فلر توضیح بدهم.فلت(flet) چیست؟آیا تا به حال شده که قصد نوشتن برنامه ای را در پایتون داشته باشید، و برای آن نیاز به رابط گرافیکی پیدا کنید؟کتابخانه های مختلفی به این منظور موجود هستند برای مثال QT،Kivy و Tkinter. اما اگر به دنبال استفاده از فلاتر در پایتون هستید، میتوانید از کتابخانه فلت استفاده کنید.نحوه نصبفقط کافیه در محیط cmd تون، این رو وارد کنید: pip install fletوب اپ؟یکی از قابلیت های جالب فلت، این است که میتوانید پروژه خود را در محیط مرورگر مشاهده کنید و میتوانید پروژه خودتان را به صورت PWA، در دسترس دوستان خویش و در یک لینک اینترنتی قرار دهید.فقط کافیست خط آخر کد خودتان را به این سان، تغییر بدهید:ft.app(target=main, view=ft.AppView.WEB_BROWSER)اما چگونه؟در وبسایت فلت، در مورد این موضوع راهکار های متفاوتی عنوان شده است; در واقع ارائه دهنده های هاست مختلفی که به صورت رایگان عمل میکنند را معرفی کرده. فلای دات آیو و رپلیت، مواردی هستند که در این وبسایت معرفی شده است اما هرکدام، در شرایط فعلی ایران، مشکلاتی دارندمشکل fly.io درخواست ورود شماره کارت برای اجازه میزبانی رایگان پروژه هست که با توجه به شرایط کنونی، امکانش وجود ندارد. بنده قصد خرید پریپید کارت از ایرانیکارت را داشتم که قیمتی حدود 400 هزار تومان دارد. اما ممکن است fly.io پریپید کارت هارا قبول نکند و 400 هزار تومان شما به باد فنا برود، پس روش مطمئنی نیست اما اگر دسترسی دارید، پیشنهاد بنده انجام این کار است.اما replit هیچ مشکلی ندارد. درواقع اگر طبق دستوری که داده شده پیش بروید، میتوانید سایت خودتان را بصورت رایگان دپلوی کنید. اما مشکل وقتی شروع میشود که قصد ورود به سایت را دارید. این کار شدنی نیست مگر با ابزار های ضد تحریم و ضد فیلتر که بنظر کمی دشوار می آیدچاره چیست؟اینجاست که کلود فلر میتواند کمک شایانی بکند.برای دپلوی کردن پروژه فلت خود در کلود فلر، مراحل زیر را طی کنید:ساخت اکانت گیتهابساخت اکانت کلود فلرآپلود پروژه به همراه فایل های مورد نیاز در گیتهابدادن گیتهاب به کلود فلرساخت اکانت ها:ساخت اکانت کلود فلر و گیتهاب یکی از آسون ترین کارهای موجود در جهان هست. نه نیاز به شماره تلفن داره نه آدرس نه هیچی. فقط کافیه جیمیلتون رو بدید و اکانت هاتون رو تحویل بگیرید. اگه اکانت دارید که نیازی به ساخت مجدد آن نیست.آپلود پروژه به همراه فایل های مورد نیاز در گیتهابخب. تا الان ما فایل پروژمون رو داریم و اکانتهامون هم ساختیم.قدم بعدی ایجاد دوتا فایل هستrequirements.txtruntime.txtساختید؟حالا اسم پروژه فلت که با پایتون نوشتید رو به main.py تغییر بدید چون ما طبق این اسم فایل پیش میریم.حالا دوتا فایل txt رو که ساختید باز کنید. در فایل ها باید محتوا های زیر رو قرار بدید:requirements.txt : کتابخانه های مورد نیازruntime.txt : نسخه پایتوندر پروژه این که ساختم، فقط از flet استفاده کردم پس در فایل requirements.txt، فقط این رو وارد میکنم:fletپایتونی که استفاده میکنم نسخه 3.11 هست. پس داخل فایل runtime ، همین رو مینویسم3.11آپلود پروژه بر روی گیتهاباینم قدم خیلی راجتی است.(بین خودمون بمونه من یکمی روش گیر کرده بودم پس آموزشش میدم)الان ما 3 تا فایل داریم.باید اونارو روی گیتهاب آپلود کنیم. پس وارد گیتهاب میشیم و از گزیه + بالا سمت راست، یک ریپوزتوری جدیدی درست میکنیم(new repository)(ببخشید اگه کلمات خارجی، فارسی نوشته میشوند)بر روی new repository کلید کنیدبعدش یک صفحه براتون باز میشه که در کل چیز خاصی نداره. یک اسم انتخاب میکنید و میزنید بعدی(این کار رو برای نشون دادن محل ورود اسم کردم)مثل من اسم فارسی انتخاب نکنیدادامش رو فعلا حوصله ندارم بگم!(خودتون میتونید سرچ کنید)(فقط بگم باید روی اون نوشته آپلود پروجکت کلیک کنید و پروژتونو آپلود کنید)خب.حالا که ریپوزتوریتون ساخته شد، اون 3 تا فایل رو آپلود کنید در آن.مرحله نهایی!الان وارد سایت کلود فلر میشیم و از قبل لاگین کردیم.از منوی سمت چپ، یکمی به پایین اسکرول میکنیم و روی گزینه Workers & Pages کلید میکنید:workers & Pagesبعدش یک صفحه براتون باز میشه که باید روی گزینه Create application کلیک کنید تا به صفحه دیگری هدایت شوید:روی اون دکمه آبیه سمت راست کلیک کنید(این نمای بالای بخش workers & pages هست)با صفحه زیر روبرو خواهید شد. باید به تب Pages بریدروی اون تبی که فلش زده شده کلیک کنیدوارد تب که شدید وسط صفحه روی کانکت تو گیت کلیک کنیدآره همون دکمه آبی وسط صفحهبعدش به اکانت گیتهابتون وصل میشید و باید یکی از ریپوزتوریهاتون رو انتخاب کنید که پروژه از اون تو، دیپلوی بشهاز اسمش تعجب نکنید. میفهمید چیه دیگهبعدش روی دکمه آبیه کلیک میکنیم تا به صفحه بعدیش برسیم.توی صفحه بعدی که اومد، طبق زیر چیزایی که هست رو تغییر بدیداول که اسم پروژه هست. دوتا کادر آبی آخر مهمهچیزای که توی دوتا کادر آبی پایین نوشتمflet publish main.pydistاین چیزی که دارم میگم رو چند ماه بعد از نوشتن پست به عنوان ویرایش میخوام اضافه بکنم. توی خود وبسایت فلت گفته بجای این کامند، از این کامند flet build web استفاده کنید که مزایای بهتری و سرعت بیشتری دارهالبته توجه داشته باشید که اسم پروژه من main.py هست و شما هم اینو بزارید اسمشو.سپس روی دکمه save & deploy کلیک میکنیمبعدش یکم صبر میکنیم تا مراحل کامل بشودشکیبا باشیددر مجموع 2 دقیقه و 20 ثانیه شکیبا بودم!خب بعدش یکمی اسکرول میکنیم و میبینیم عه دوباره دکمه آبیه پیداش شد! روش کلیک میکنیمCountinue to projectکلیک کردید؟مبارکه پروژه شما اماده ارسال لینکش به دوستاتون هستشما الان یک PWA رو با استفاده از فلت ساختیدروی دکمه visit site بزنید تا سایتتون براتون باز بشهسایتی که ساختیم این بود: https://clothes-calculato.pages.dev/ اینم لینکش اگه باز نشد : https://clothes-calculato.pages.dev/شما میتونید کلی کار دیگه کنید، دامین خودتون رو ست کنید و غیره.اگه یوقت گمراه شدید، سری به ریپوزتوری گیتهاب این پروژه بیاندازید : https://github.com/Amitrix-bit/clothes_calculatorنوشتن این مطلب یکمی ازم زمان برد. اگه یوقت تونستم کمکی بهتون کنم خیییلی خوشحال میشم اگه بهم بگیدبدرود