🔔 با توجه به بهبود نسبی اینترنت، آمادهسازی دورهها آغاز شده است. به دلیل تداوم برخی اختلالات، بارگذاری دورهها ممکن است با کمی تأخیر انجام شود. مدت اشتراکهای تهیهشده محفوظ است.
لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش نکست جیاس ۱۵ و فایربیس
- آخرین آپدیت
دانلود Next.js 15 & Firebase
نکته:
ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:
آموزش ساخت اپلیکیشن املاک با Next.js 15 و Firebase
مهارتهای توسعه وب خود را ارتقا دهید! در این دوره، Fire Homes، یک اپلیکیشن املاک کاملاً کاربردی برای یک آژانس املاک فرضی را خواهیم ساخت. با ترکیب قدرت Next.js 15 و Firebase، تجربه واقعی در ساخت اپلیکیشنهای مدرن و مقیاسپذیر با ابزارهای پیشرفته کسب خواهید کرد.
این دوره تمام آنچه را که برای ساخت یک اپلیکیشن حرفهای نیاز دارید، از جمله احراز هویت، فضای ذخیرهسازی ابری و یک پایگاه داده مبتنی بر Firestore را پوشش میدهد.
آنچه خواهید ساخت:
یک اپلیکیشن املاک کامل با ویژگیهای زیر:
نقشهای کاربری: پشتیبانی از کاربران ادمین و غیر ادمین، با عملکردهای خاص نقش.
احراز هویت: ورود به سیستم یا ثبت نام با استفاده از ایمیل/رمز عبور یا احراز هویت گوگل.
پنل مدیریت: مدیریت لیست املاک (اضافه کردن، حذف و به روز رسانی) از طریق یک رابط کاربری بصری.
فضای ذخیرهسازی ابری: بارگذاری و مدیریت تصاویر املاک با Firebase Cloud Storage.
پایگاه داده Firestore: ذخیره و بازیابی دادههای املاک.
جستجوی ملک: به کاربران کمک کنید تا خانه رویایی خود را با قابلیت جستجو پیدا کنند.
مورد علاقهها: به کاربران غیر ادمین اجازه دهید املاک مورد علاقه خود را ذخیره و مدیریت کنند.
آنچه خواهید آموخت:
Next.js 15: ساخت اپلیکیشنهای وب مدرن با جدیدترین App Router.
TypeScript: نوشتن کد تمیز، قابل نگهداری و مقاوم در برابر خطا.
Zod برای اعتبارسنجی: اطمینان از یکپارچگی دادهها با ابزارهای اعتبارسنجی قدرتمند.
Next.js Server Actions: سادهسازی عملکرد سمت سرور با ویژگیهای پیشرفته.
ادغام Firebase:
Firestore: استفاده از Firestore برای ذخیره و بازیابی دادهها.
احراز هویت: ورود ایمن به سیستم کاربران با استفاده از Firebase Auth.
فضای ذخیرهسازی ابری: مدیریت آپلود و سازماندهی تصاویر به صورت یکپارچه.
کنترل دسترسی مبتنی بر نقش: پیادهسازی مدیریت کاربری قوی با عملکرد متناسب برای ادمینها و کاربران عادی.
عملیات CRUD: ایجاد، خواندن، به روز رسانی و حذف لیست املاک در Firestore.
ویژگیهای متمرکز بر کاربر: افزودن جستجو و مورد علاقهها برای یک تجربه کاربری جذاب.
این دوره برای چه کسانی مناسب است؟
توسعه دهندگان مشتاق: یاد بگیرید که اولین اپلیکیشن فول استک خود را با Next.js و Firebase بسازید.
توسعه دهندگان وب متوسط: دانش عمیقتری از توسعه اپلیکیشن مقیاسپذیر کسب کنید.
تغییر دهندگان شغل: یک پروژه نمونه کار بسازید که مهارتهای توسعه وب مدرن را نشان دهد.
چرا در این دوره ثبت نام کنید؟
این دوره فقط در مورد کدنویسی نیست - بلکه در مورد درک فرآیند فکری پشت ساخت اپلیکیشنهای مقیاسپذیر و کارآمد است. در پایان دوره، یک اپلیکیشن آماده تولید و اعتماد به نفس برای مقابله با پروژههای خود خواهید داشت.
ابزارهایی که استفاده خواهید کرد:
Next.js 15 (App Router)
TypeScript
Zod
پایگاه داده Firestore
Firebase Authentication & Cloud Storage
پیش نیازها:
تمایل به یادگیری و تجربه: نگرش فعال و اشتیاق به کشف فناوریهای جدید، مانند Firebase، TypeScript و مدیریت پایگاه داده، به دانشجویان کمک میکند تا بیشترین بهره را از این دوره ببرند.
آشنایی اولیه با React مورد نیاز است، زیرا این دوره بر اساس مفاهیم React ساخته شده و آنها را با Next JS ادغام میکند.
آشنایی با Node و NPM برای مدیریت وابستگیها و اجرای محیطهای توسعه توصیه میشود.
سرفصل ها و درس ها
معرفی و تنظیمات
Introduction & Setup
مقدمه
Introduction
مهم! لطفا قبل از شروع دوره این را بخوانید! (مخزن GitHub و غیره)
Important! Please read this before you start the course! (GitHub repo etc)
امتیازها و نظرات Udemy
Udemy ratings and reviews
تفاوت این تنظیمات با برنامه های سنتی React + Firebase
How this setup differs from traditional React + Firebase apps
مروری بر استک + ابزارهای مفید برای این دوره
Overview of stack + helpful tools for this course
راه اندازی پروژه Next JS
Set up Next JS project
راه اندازی پروژه Firebase
Set up Firebase project
اتصال Next JS به Firebase
Connect Next JS to Firebase
ساخت قابلیت ورود با گوگل
Build the Login with Google functionality
اضافه کردن نوار ناوبری با لینک های احراز هویت
Add the navbar with auth links
نصب shadcn ui و اضافه کردن ورود با گوگل
Install shadcn ui and add login with Google
ایجاد زمینه احراز هویت و نمایش کاربر وارد شده
Create auth context and display logged in user
اضافه کردن قابلیت خروج
Add logout functionality
بهبود استایل نوار ناوبری
Improve navbar styling
بهبود استایل صفحه ورود
Improve login page styling
اضافه کردن منوی کشویی کاربر فعلی به نوار ناوبری
Add the current user dropdown to the navbar
ساخت قابلیت مدیریت و داشبورد
Build the admin functionality and dashboard
اضافه کردن نقش مدیر به یک کاربر و ذخیره توکن های احراز هویت در کوکی ها
Add the admin role to a user and save auth tokens in cookies
نمایش مشروط آیتم های منوی پروفایل کاربر
Conditionally render user profile menu items
اضافه کردن صفحه داشبورد مدیر + محافظت از مسیر با میان افزار Next JS
Add the admin dashboard page + route protection with Next JS middleware
ساخت صفحه اصلی داشبورد مدیر
Build the admin dashboard main page
ایجاد صفحه ملک جدید
Create the New Property page
ایجاد طرحواره فرم ملک جدید
Create the new property form schema
ایجاد کامپوننت PropertyForm و شروع ساخت رابط کاربری فرم
Create PropertyForm component and start building form UI
اتمام رندر کردن فیلدهای PropertyForm
Finish rendering the PropertyForm fields
ایجاد اکشن سرور saveNewProperty و ذخیره داده ها در firestore
Create the saveNewProperty server action and save data to firestore
بهبود رابط کاربری هنگام ارسال فرم ملک جدید
Improve the UI when submitting the new property form
پرس و جو برای داده های املاک
Query for properties data
رندر کردن لیست املاک در یک جدول
Render the properties list in a table
محاسبه تعداد کل صفحات برای یک پرس و جو firestore
Calculate the total pages for a firestore query
رندر کردن دکمه های صفحه بندی در زیر جدول املاک
Render the pagination buttons under the properties table
ایجاد صفحه ویرایش ملک
Create the edit property page
ایجاد فرم ویرایش ملک
Create the edit property form
ایجاد اکشن سرور updateProperty
Create the updateProperty server action
اضافه کردن محافظت از مسیر برای تمام مسیرهای admin-dashboard و صفحات احراز هویت
Add route protection for all admin-dashboard routes and auth pages
بهبود استایل جدول املاک
Improve the styling of the properties table
ساخت قابلیت آپلود تصاویر
Build the image uploads functionality
ایجاد کامپوننت آپلود کننده تصویر
Create the image uploader component
ذخیره تصاویر انتخاب شده در وضعیت فرم
Store selected images in the form state
رندر کردن لیست تصاویر
Render the images list
پیاده سازی مرتب سازی مجدد و حذف تصاویر
Implement reorder and delete images
پیاده سازی آپلود تصاویر به firebase storage برای املاک جدید
Implement upload images to firebase storage for new properties
بارگذاری تصاویر آپلود شده موجود در فرم ویرایش ملک
Load existing uploaded images into the edit property form
پیاده سازی آپلود + حذف تصاویر هنگام به روز رسانی یک ملک
Implement upload + delete images when updating a property
ساخت صفحات پیش نمایش ملک
Build the property preview pages
ایجاد صفحه ملک و رندر کردن توضیحات به عنوان markdown
Create the property page and render the description as markdown
رندر کردن جزئیات ملک
Render the property details
رندر کردن carousel تصاویر ملک و دکمه بازگشت
Render the property images carousel and back button
ساخت صفحه و قابلیت جستجوی ملک
Build the property search page and functionality
ایجاد صفحه جستجوی ملک و فیلترهای جستجو
Create the property search page and search filters
اتصال فیلترهای جستجو به URL و ایجاد ایندکس های firestore
Hook up the search filters to the URL and create firestore indexes
رندر کردن لیست املاک فیلتر شده
Render the filtered property list
اضافه کردن دکمه های صفحه بندی برای جستجوی ملک
Add the pagination buttons for property search
ساخت قابلیت ورود و ثبت نام با ایمیل + رمز عبور
Build the login and register with email + password functionality
ایجاد طرحواره فرم ثبت نام
Create the register form schema
رندر کردن رابط کاربری فرم ثبت نام
Render the register form UI
ایجاد اکشن سرور ثبت نام کاربر
Create the register user server action
ساخت فرم ورود با ایمیل و رمز عبور
Build the login with email and password form
بهبود اعتبارسنجی و خطاها برای ورود و ثبت نام
Improve validation and errors for login and register
به روز رسانی میان افزار برای رسیدگی به انقضای توکن های احراز هویت
Update the middleware to cater for expiring auth tokens
ساخت قابلیت علاقه مندی ها
Build the favourites functionality
اضافه کردن صفحه my-favourites و دکمه تغییر علاقه مندی
Add the my-favourites page and toggle favourite button
پیاده سازی قابلیت اضافه کردن به علاقه مندی ها
Implement the add to favourites functionality
پیاده سازی قابلیت حذف از علاقه مندی ها
Implement the remove from favourites functionality
پیاده سازی مسیرهای موازی و رهگیری برای مودال ورود
Implement parallel and intercepting routes for login modal
رندر کردن فرم ورود در مودال ورود
Render the login form in the login modal
پرس و جو برای لیست علاقه مندی ها
Query for the list of favourites
رندر کردن لیست علاقه مندی ها در صفحه my-favourites
Render the list of favourites in the my-favourites page
پیاده سازی صفحه بندی جدول علاقه مندی ها و حذف علاقه مندی
Implement the favourites table pagination and remove favourite
ساخت بخش حساب کاربری من
Build the my account section
اضافه کردن صفحه حساب و رندر کردن جزئیات کاربر
Add the account page and render user details
پیاده سازی فرم تغییر رمز عبور
Implement change password form
پیاده سازی قابلیت حذف حساب کاربری
Implement delete account functionality
حذف علاقه مندی های کاربر هنگام حذف حساب
Delete user favourites on account deletion
پیاده سازی قابلیت فراموشی رمز عبور
Implement forgot password functionality
اضافات
Extras
فعال کردن حافظه پنهان برای صفحات ملک
Enable caching for property pages
اضافه کردن حالت های loading به برنامه
Add loading states to app
ساخت صفحه فرود (اختیاری)
Build the landing page (optional)
پیاده سازی قابلیت حذف ملک
Implement delete property functionality
نمایش نظرات