از صفر تا ورود به بازار کار

بوت‌کمپ دانشکار
جنگو

۲۱ نمونه پروژه جنگو از مبتدی تا پیشرفته

اوایل که جنگو را یاد گرفته بودم نمونه پروژه‌های زیادی نداشتم که بتوانم مهارت‌هایم را به کارفرماها نشان دهم. هربار به همان پروژه‌هایی که در طول دوره‌ها مختلف داشتم بسنده می‌کردم اما کافی نبود. این شد که دست به کار شدم و مجموعه از چند نمونه پروژه جنگو جمع‌آوری کردم. این نمونه‌ها برایم مثل سوال‌های شب امتحان بودند و هربار یکی به از آن‌ها پاسخ می‌دادم. حتی از این پروژه‌ها در رزومه‌ام هم یاد کرده‌ام. اگر شما هم برنامه‌نویس جنگو هستید در این مطلب از مجله دانشکار همراه من باشید تا با پروژه‌های مختلف مهارت‌هایمان را ارتقا دهیم.

نمونه پروژه جنگو برای سطح مبتدی

انجام پروژه‌های مختلف راهی برای نشان دادن مهارت‌های افرادی است که یادگیری جنگو را تازه شروع کرده‌اند. اگر شما هم در این مسیر هستید باید تمرین‌هایی انجام دهید که به بخش‌های اصلی جنگو مانند Model، View، Template، فرم‌ها و مدیریت کاربران نیاز دارند.

۱. سیستم ثبت‌نام و ورود

اکثر وب‌سایت‌ها به یک سیستم ورود نیاز دارد. سیستم ثبت‌نام و ورود می‌تواند یکی از قابلیت‌های پایه یک وب‌سایت باشد که می‌توانید آن را با استفاده از جنگو پیاده‌سازی کنید. صفحه ثبت‌نام شامل فیلدهایی مانند ایمیل یا شماره تلفن، نام کاربری (اختیاری)، رمز عبور جدید و یک گزینه «مرا به خاطر بسپار» است. کاربر می‌تواند با ایمیل یا شماره تلفن خود ثبت‌نام کند و براساس دستورالعمل‌های تعیین‌شده یک رمز عبور انتخاب کند. پروفایل کاربر از طریق یک کد فعال‌سازی که برای او ایمیل می‌شود، فعال خواهد شد.

در ادامه، صفحه ورود فیلدهایی برای وارد کردن نام کاربری، ایمیل، شماره تلفن و رمز عبور نمایش می‌دهد. سپس کاربر می‌تواند با کلیک روی دکمه ورود، وارد وب‌سایت شود. علاوه‌بر این، می‌توانید مکانیزم بازیابی رمز عبور را نیز پیاده‌سازی کنید.

فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML، جاوااسکریپتsimple-django-login-and-register
فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML، جاوااسکریپتsimple-django-login-and-register

۲. نرم‌افزار ماشین‌حساب

ماشین‌حساب ساده برای انجام عملیات پایه ریاضی، ایده خوبی برای یک پروژه است. این ماشین‌حساب یک رابط کاربری برای وارد کردن اعداد، پاک کردن اعداد یا حذف کامل نتیجه دارد. در این ماشین‌حساب می‌توانیم عملیاتی مانند جمع، تفریق، ضرب و تقسیم را قرار دهیم.

فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML ،CSS، جاوااسکریپتSimple-Calculator-Web-app
پروژه ماشین حساب

۳. تبدیل متن به HTML

یکی از ایده‌های ساده برای پروژه‌های جنگو، ساخت یک ابزار تبدیل متن به HTML است. می‌توانید رابطی طراحی کنید که کاربر در آن متن وارد یا یک سند را آپلود کند و سپس محتوای آن به کد HTML تمیز تبدیل شود. این برنامه می‌تواند فرایند کدنویسی HTML را ساده‌تر کند و در زمان صرفه‌جویی کند.

فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML ،CSS، جاوااسکریپتText-to-HTML

۴. ردیاب‌کالری

حوزه سلامت یکی از پرمخاطب‌ترین حوزه‌های کاری این روزها است که می‌توان برای آن نرم‌افزار مختلفی، مانند ردیاب مصرف آب، ردیاب کالری یا قدم‌شمار، تهیه کرد. می‌توانید یک نرم‌افزار تحت وب بسازید که براساس اطلاعات واردشده توسط کاربر، میزان کالری مصرفی او را ردیابی کند. این برنامه می‌تواند جزئیات مواد مغذی مصرف‌شده در طول روز را همراه با اهداف کالری کاربر نمایش دهد.

فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML ،CSS، جاوااسکریپت، Bootstrapdjango-calorie-tracke

۵. ارسال‌کننده ایمیل

ایمیل به یکی از اصلی‌ترین ابزارهای ارتباط حرفه‌ای تبدیل شده است، اما آیا تا به حال به این فکر کرده‌اید که این فرایند چگونه انجام می‌شود؟ مکانیزم ارسال ایمیل به اندازه‌ای ساده است که می‌توان آن را در پروژه‌های جنگو پیاده‌سازی کرد. این فریم‌ورک قابلیت‌هایی برای ارسال ایمیل در اختیار توسعه‌دهنده جنگو قرار می‌دهد. با استفاده از جنگو می‌توان یک سیستم ارسال ایمیل را از طریق Gmail SMTP راه‌اندازی کرد. این پروژه حتی بدون بخش فرانت‌اند هم قابل پیاده‌سازی است و ساختار تقریبا ساده‌ای دارد.

فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML Django-Email-Sender
پروژه ارسال‌کننده ایمیل

۶. سرویس اشتراک‌گذاری متن و کد فارسی

ساخت یک سرویس ساده برای اشتراک‌گذاری متن یا قطعه‌کد می‌تواند پروژه مناسبی برای شروع کار با جنگو باشد. در چنین پروژه‌ای، کاربر متن یا کد موردنظر خود را وارد می‌کند و یک صفحه یا لینک برای مشاهده و اشتراک‌گذاری آن دریافت می‌کند.

کدهاب نمونه ایرانی و متن‌باز از این ایده است که به‌عنوان یک سرویس Pastebin فارسی توسعه داده شده است. طبق توضیحات مخزن پروژه، فناوری‌های اصلی آن جنگو و Bootstrap هستند. ساخت نمونه‌ای مشابه به شما کمک می‌کند کار با Viewها، URLها، Templateها، فرم‌ها و ذخیره اطلاعات را در جنگو تمرین کنید.

فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML، Bootstrap و CSScodehub-ir

۷. تقویم و یادآور فارسی

ساخت یک تقویم آنلاین نیز می‌تواند یکی از نمونه پروژه‌های جنگو برای سطح مبتدی باشد. در این پروژه می‌توانید به کاربران اجازه دهید رویدادهای مختلف را در تقویم ثبت کنند و برای آن‌ها یادآوری ایجاد کنند.

پروژه متن‌باز تقویم جنگو نمونه‌ای مناسب برای کاربران ایرانی است که با جنگو توسعه داده شده و علاوه‌بر تقویم میلادی، از تقویم جلالی (شمسی) و قمری هم پشتیبانی می‌کند. این پروژه قابلیت ایجاد رویداد و یادآور دارد و برای تمرین کار با مدل‌ها، تاریخ‌ها و نمایش اطلاعات در جنگو مناسب است.

فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML، تقویم جلالی و CSSF4R4N

برای پاسخ دادن به نمونه پروژه‌های جنگو و تقویت مهارت‌هایتان شرکت در بوت‌کمپ جنگوی دانشکار را به شما پیشنهاد می‌دهیم.

نمونه پروژه جنگو برای سطح متوسط

بعد از یادگیری مفاهیم پایه جنگو، می‌توانید پروژه‌هایی را انجام دهید که چند قابلیت مختلف را در کنار یکدیگر قرار می‌دهند. در این مرحله، کار با پایگاه داده، احراز هویت، APIها، پرداخت آنلاین و مدیریت بخش‌های مختلف یک وب‌سایت اهمیت بیشتری پیدا می‌کند. نمونه پروژه‌های جنگو برای سطح متوسط به شما کمک می‌کنند تجربه ساخت برنامه‌هایی نزدیک‌تر به پروژه‌های واقعی بازار کار را به دست آورید.

۸. نرم‌افزار چت

ما در زندگی روزمره از نرم‌افزارهای پیام‌رسانی مانند واتساپ، تلگرام، فیسبوک مسنجر، وی‌چت، اسنپ‌چت، دیسکورد و iMessage استفاده می‌کنیم. حتی خودمان می‌توانیم یکی از آن‌ها بسازیم.

با استفاده از جنگو می‌توانید یک نرم‌افزار چت ساده ایجاد کنید. این برنامه می‌تواند یک سیستم پیام‌رسانی دونفره باشد که برای تبادل داده‌ها از REST API و برای ارسال اعلان‌ها و جلوگیری از Polling از WebSocket استفاده می‌کند. همچنین نرم‌افزار می‌تواند هنگام جابه‌جایی کاربر بین چت‌های مختلف، آخرین ۱۰ تا ۱۵ پیام را نمایش دهد. شاید این تعداد پیام کم به نظر برسد، اما برای توسعه‌دهنده‌ای که خیلی وقت نیست کار با پروژه‌های جنگو را شروع کرده، گزینه مناسبی محسوب می‌شود.

فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML، جاوااسکریپتdjango-channels-chat

۹. نرم‌افزار پخش موسیقی

با استفاده از جنگو می‌توانید یک نرم‌افزار پخش موسیقی ایجاد کنید که آهنگ‌ها را از کتابخانه دستگاه کاربر یا منابع آنلاین پخش کند. این برنامه می‌تواند قابلیت‌های معمول یک موزیک‌پلیر مانند پخش آهنگ بعدی، تکرار، مکث، توقف و موارد مشابه را داشته باشد. اگر بخواهید موسیقی را از منابع آنلاین در برنامه پخش کنید، برای این پروژه به استفاده از APIهای خارجی نیاز خواهید داشت.

فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML، جاوااسکریپت، CSS و SQLite 3Django-Music-Player
نرم‌افزار پخش‌کننده موسیقی

۱۰. نرم‌افزار پیش‌بینی آب‌وهوا

با جنگو نرم‌افزاری طراحی کنید که وضعیت آب‌وهوا مانند میزان پوشش ابر، باران، برف، سرعت باد و دما را به‌صورت پویا نمایش می‌دهد. این نرم‌افزار می‌تواند قابلیت مشاهده اطلاعات آب‌وهوا برای یک موقعیت مکانی مشخص و همچنین موقعیت فعلی کاربر را داشته باشد. ممکن است دیتاست مناسبی برای پیش‌بینی وضعیت آب‌وهوا در اختیار نداشته باشید، می‌توانید برای دریافت این اطلاعات از APIهای آب‌وهوایی موجود در اینترنت استفاده کنید.

فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML، جاوااسکریپت، CSS و SQLWeather-App

۱۱. رزومه‌ساز

تقریباً همه ما حداقل یک‌بار از رزومه‌ساز استفاده کرده‌ایم. این ابزارها بخش طراحی رزومه را ساده‌تر می‌کنند و به ما اجازه می‌دهند بیشتر روی محتوا، مهارت‌ها و پروژه‌های خود تمرکز کنیم. با استفاده از جنگو می‌توانید یک رزومه‌ساز ایجاد کنید. ایده اصلی چنین پروژه‌ای این است که کاربر اطلاعاتی مانند نام، مهارت‌ها، سوابق کاری، گواهینامه‌ها، وب‌سایت‌ها و سایر اطلاعات موردنیاز را در یک فرم وارد کند. سپس این اطلاعات به یک رزومه با طراحی حرفه‌ای تبدیل می‌شوند. علاوه‌بر آن کاربر می‌تواند براساس سلیقه خود، از بین یک یا چند قالب آماده یکی را انتخاب کند.

فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML، جاوااسکریپت، CSS و BootstrapDjango-Resume-Builder

۱۲. نرم‌افزار آزمون‌های سرگرم‌کننده

چند بار پیش آمده که در سایت‌هایی مثل BuzzFeed در آزمون‌های سرگرم‌کننده‌ای مثل «من کدام نوع نان سیر هستم؟» شرکت کرده باشید؟ آیا تا به حال به این فکر کرده‌اید که بخش بک‌اند چنین نرم‌افزارها یا وب‌سایت‌های آزمون چگونه کار می‌کند؟ شما می‌توانید با استفاده از جنگو نرم‌افزار آزمون خودتان را بسازید.

این نرم‌افزار می‌تواند قابلیت‌های معمول یک سیستم آزمون، مانند ثبت‌نام و ورود کاربران، ساخت آزمون جدید یا انتخاب از بین آزمون‌های موجود، تایمر، تم‌های مختلف برای آزمون و داشبورد مخصوص هر کاربر یا داشبورد عمومی را داشته باشد. این پروژه در دسته پروژه‌های مبتنی‌بر رای‌گیری قرار می‌گیرد و برای افرادی مناسب است که سطح دانش جنگو و زبان‌های فرانت‌اند آن‌ها متوسط است.

فناوری مورد استفادهکد منبع
پایتون-جنگو و Bootstrap 4lets-quiz
نرم‌افزار آزمون‌های سرگرم‌کننده

۱۳. سایت مشابه دیوار

پروژه متن‌باز دیوار توسط تیم ایرانی جامدادی یک نمونه ساده از سایت Divar.ir توسعه داده شده است. در ساختار پروژه بخش‌هایی برای حساب کاربران، آگهی‌ها، دسته‌بندی‌ها، موقعیت مکانی، امور مالی و خرید وجود دارد. همچنین در مخزن پروژه استفاده از جنگو، PostgreSQL، سیستم Cache، Django Signals و درگاه پرداخت وجود دارد.. بنابراین نسبت به پروژه‌های CRUD ساده، تمرین کامل‌تری برای جنگو محسوب می‌شود.

فناوری مورد استفادهکد منبع
پایتون-جنگو، PostgreSQL ،Django Templates ،Django Signals، Cache و Payment GatewayDivar

۱۴. سفارش آنلاین در رستوران

پروژه یامی فینگرفود وب‌سایت رستورانی مبتنی‌بر جنگو است که تقریباً به‌طور کامل برای زبان فارسی بومی‌سازی شده و از تقویم جلالی نیز پشتیبانی می‌کند. این پروژه قابلیت‌هایی مانند ثبت‌نام و احراز هویت با شماره تلفن، پروفایل کاربری، CRUD سفارش‌ها، تاریخچه سفارش، مدل‌های مختلف منو و API برای دریافت اطلاعات منو دارد. همچنین برای بخش‌های مختلف پروژه تست‌هایی در نظر گرفته شده است.

فناوری مورد استفادهکد منبع
پایتون-جنگو، Django REST Framework، HTML، تقویم جلالی و Django I18NYummyFingerFood

نمونه پروژه جنگو برای سطح پیشرفته

در پروژه‌های پیشرفته علاوه‌بر ساخت وب‌سایت ساده باید بتوانید قابلیت‌های مختلف را در قالب یک سیستم کامل و قابل توسعه پیاده‌سازی کنید. کار با جنگو REST فریم‌ورک، WebSocket، پردازش‌های پس‌زمینه، سیستم‌های پرداخت، احراز هویت پیشرفته و طراحی معماری مناسب از جمله مهارت‌هایی هستند که می‌توانید در این مرحله تمرین کنید. در این بخش به نمونه پروژه جنگو مناسب سطح شما اشاره کرده‌ایم.

۱۵. وب‌سایت فروشگاه اینترنتی

همه‌گیری کرونا باعث افزایش چشمگیر محبوبیت وب‌سایت‌های فروشگاهی شد و یادگیری نحوه ساخت یک فروشگاه اینترنتی در ابتدای مسیر شغلی می‌تواند رزومه شما را برای فعالیت به‌عنوان توسعه‌دهنده وب قوی‌تر کند. می‌توانید برای ساخت چنین پروژه‌ای از فروشگاه‌های اینترنتی معروفی مانند Amazon، Flipkart و Snapdeal الهام بگیرید. یک وب‌سایت فروشگاهی باید شامل قابلیت‌های زیر باشد که می‌توانید آن‌ها را با استفاده از فریم‌ورک جنگو و APIهای خارجی پیاده‌سازی کنید:

  • ورود مشتریان: وب‌سایت باید همیشه یک بخش ثبت‌نام و ورود برای کاربران داشته باشد که یکی از اصلی‌ترین بخش‌های تعامل کاربر با سایت است.
  • فیلتر و جست‌وجوی محصولات: کاربران باید بتوانند محصولات را براساس نام، برند، منطقه و موارد دیگر جست‌وجو کنند. همچنین سایت باید فیلترهایی داشته باشد که محصولات را براساس ترجیحات کاربر مانند قیمت، منطقه، برند، موجودی و زمان تحویل نمایش دهد.
  • سبد خرید: سایت باید بخشی داشته باشد که کاربران بتوانند محصولاتی را که قصد خریدشان را دارند مشاهده کنند. این بخش باید به درگاه پرداخت متصل شود تا خرید نهایی شود. کاربر همچنین باید بتواند محصولات را به سبد خرید اضافه یا از آن حذف کند.
  • لیست علاقه‌مندی‌ها: اگر کاربر به محصولی علاقه داشته باشد اما در حال حاضر قصد خرید آن را نداشته باشد، می‌تواند آن را به لیست علاقه‌مندی‌ها اضافه کند. کاربران باید بتوانند محصولات موجود یا ناموجود را در این بخش ذخیره کنند. بعداً نیز می‌توان در صورت موجود شدن محصول یا اعمال تخفیف ویژه، به کاربر اطلاع داد.
  • نظرات و امتیازدهی: کاربران باید بتوانند نظرات و امتیازهای مربوط به محصولات را مشاهده کنند تا تصمیم بهتری برای خرید بگیرند. همچنین می‌توان نظرات را براساس معیارهایی مانند تعداد ستاره‌ها، موضوع نظر یا موقعیت مکانی فیلتر کرد.
  • پیگیری ارسال سفارش: کاربر باید از وضعیت ارسال و تحویل محصول مطلع باشد. این وضعیت می‌تواند شامل مراحلی مانند تحویل محصول از انبار به مسئول ارسال، خروج محصول برای تحویل و سایر مراحل ارسال باشد.
  • سوالات متداول: حتی اگر اطلاعات وب‌سایت کاملاً شفاف باشد، کاربران همچنان ممکن است سوالاتی داشته باشند. بنابراین بهتر است بخشی برای سوالات متداول مربوط به محصولات و همچنین خود وب‌سایت در نظر گرفته شود.
فناوری مورد استفادهکد منبع
پایتون-جنگو، HTML، CSS، جاوااسکریپت، Bootstrap، Node.js و React.js django-ecommerce
وب‌سایت فروشگاه اینترنتی

۱۶. نرم‌افزار چت صوتی و تصویری

برای ساخت نرم‌افزار تماس صوتی و تصویری می‌توانید در پروژه‌های جنگو خود از فناوری‌هایی مانند WebRTC، Twilio یا سایر فریم‌ورک‌ها و سرویس‌های شخص ثالث استفاده کنید. این پروژه به شما کمک می‌کند با نحوه برقراری ارتباط در استریم صوت و تصویر آشنا شوید. یک نرم‌افزار چت صوتی و تصویری می‌تواند شامل قابلیت‌های زیر باشد:

  • ثبت‌نام و مدیریت پروفایل: کاربر باید بتواند با اطلاعاتی مانند ایمیل یا شماره تلفن در برنامه ثبت‌نام یا وارد شود. همچنین می‌توان امکان ساخت چند پروفایل و جابه‌جایی بین آن‌ها را فراهم کرد.
  • همگام‌سازی مخاطبان: کاربر باید در صورت تمایل بتواند مخاطبان خود را با نرم‌افزار همگام‌سازی کند.
  • اقدامات امنیتی: کاربران ممکن است در تماس‌های خود اطلاعات شخصی و محرمانه ردوبدل کنند. بنابراین برنامه باید از رمزنگاری سرتاسری استفاده کند تا اشخاص ثالث به داده‌ها دسترسی نداشته باشند.
  • چت متنی: حتی اگر برنامه از تماس تصویری پشتیبانی کند، قابلیت چت متنی نیز باید فعال باشد. این قابلیت به کاربر کمک می‌کند فایل‌ها، یادداشت‌ها و پیام‌های مهم را ارسال کند یا در صورت افت کیفیت صدا، از چت متنی استفاده کند.
فناوری مورد استفادهکد منبع
پایتون-جنگو، ری‌اکت، React Native، MML، Firebase و WebSocketsDjango-WebRtc

۱۷. نرم‌افزار جمع‌آوری اخبار

نرم‌افزار جمع‌آوری اخبار چندین خزنده وب را با هم ترکیب می‌کند تا اخبار را از منابع آنلاین مختلف جمع‌آوری و نمایش دهد. این پروژه می‌تواند ایده مناسبی برای پروژه‌های جنگو باشد. قابلیت‌های زیر را می‌توانید در نرم‌افزار خبری خود پیاده‌سازی کنید:

  • نمایش شخصی‌سازی‌شده اخبار: کاربر می‌تواند با اعمال فیلترهایی مانند موقعیت مکانی، زبان، نوع خبر و موارد مشابه مشخص کند چه نوع اخباری در فید او نمایش داده شود. همچنین باید بتواند کانال‌های بیشتری پیدا و به فهرست خود اضافه کند. نرم‌افزار می‌تواند براساس بازدیدها و ترجیحات کاربر، مقالات مشابه را پیشنهاد دهد تا تعامل او با برنامه بیشتر شود.
  • اشتراک‌گذاری و گزارش: کاربر باید بتواند اخبار را از طریق نرم‌افزارهای دیگر مانند واتساپ، توییتر، تلگرام، اینستاگرام، اسنپ‌چت، ردیت و موارد مشابه به اشتراک بگذارد. همچنین باید قابلیتی برای گزارش مقالات نامناسب در نظر گرفته شود.
  • تحلیل داده‌ها: ناشر نیز باید بتواند میزان ترافیکی را که از طریق نرم‌افزار خبری برای وب‌سایتش ایجاد شده مشاهده کند. این قابلیت را می‌توان با اتصال یک نرم‌افزار یا سرویس تحلیل داده به نرم‌افزار پیاده‌سازی کرد.
  • بخش نظرات: کاربران باید بتوانند به خبرها واکنش نشان دهند و برای مقالات نظر ثبت کنند. این قابلیت به مجموعه کمک می‌کند تشخیص دهد مخاطبان به چه نوع اخباری بیشتر علاقه دارند و براساس آن فعالیت خود را تنظیم کند.
فناوری مورد استفادهکد منبع
کتابخانه‌هایی مانند BeautifulSoup، Django و ماژول Requests
فناوری‌های فرانت‌اند مانند HTML، CSS، JavaScript، React و React Native
News Aggregator Application

۱۸. نرم‌افزار تحت وب مبتنی‌بر موقعیت مکانی

با استفاده از زیرمجموعه‌ای از جنگو به نام GeoDjango می‌توان نرم‌افزار‌های تحت وب مبتنی‌بر موقعیت مکانی ایجاد کرد. بسته به نیاز پروژه، این برنامه‌ها می‌توانند به‌صورت Real-time یا غیر Real-time طراحی شوند. برای شروع می‌توانید پروژه‌ای بسازید که فروشگاه‌های نزدیک به موقعیت کاربر را نمایش دهد. درحالی‌که ساختار اصلی نرم‌افزار تحت وب از ابتدا با جنگو ساخته می‌شود، GeoDjango می‌تواند برای پیاده‌سازی قابلیت‌های مکان‌محور مورد استفاده قرار گیرد. این نرم‌افزار می‌تواند شامل قابلیت‌های زیر باشد:

  • نوار جست‌وجو: درصورتی که موقعیت مکانی زنده کاربر دقیق نباشد، باید بتواند موقعیت موردنظر خود را به‌صورت دستی وارد کند.
  • رابط گرافیکی واکنش‌گرا: رابط کاربری گرافیکی برنامه باید تا حد زیادی واکنش‌گرا باشد. این بخش ممکن است کمی چالش‌برانگیز باشد، زیرا بررسی و نمایش تعامل کاربر با نقشه به‌صورت Heatmap ساده نیست؛ با این حال می‌توانید آن را به‌عنوان بخشی از پروژه امتحان کنید.
  • امنیت: از آنجا که این نرم‌افزار با اطلاعات شخصی کاربران مانند موقعیت مکانی سروکار دارد، باید مطابق با استانداردهای امنیتی طراحی شود.
  • صفحه‌های درخواست مجوز: نرم‌افزار باید پیش از جمع‌آوری اطلاعات موقعیت مکانی، از کاربر اجازه بگیرد تا حریم خصوصی او حفظ شود. گاهی ممکن است کاربر بخواهد بدون به‌اشتراک‌گذاری موقعیت لحظه‌ای خود جست‌وجو کند؛ بنابراین برنامه باید از این حالت نیز پشتیبانی کند.
فناوری مورد استفادهکد منبع
فناوری‌های توسعه فرانت‌اند مانند React.js و React Native
پایتون– جنگو و GeoDjango
پایگاه‌های داده مکانی مانند PostgreSQL و PostGIS
nearbyshops
نرم‌افزار تعیین موقعیت مکانی

۱۹. پورتال کاریابی متن‌باز

همه ما در مقطعی از زندگی به‌دنبال شغل بوده‌ایم. آیا تا به حال به این فکر کرده‌اید که چطور استخدام‌کنندگان مختلف از حوزه‌های گوناگون، فرصت‌های شغلی خود را در یک پلتفرم منتشر می‌کنند و این آگهی‌ها به افراد مرتبط نمایش داده می‌شوند؟ می‌توانید با ساخت یک پورتال کاریابی به‌عنوان یکی از پروژه‌های جنگو، این فرایند را در عمل پیاده‌سازی کنید. این پورتال می‌تواند شامل قابلیت‌های زیر باشد:

  • ثبت‌نام و ورود: برای مدیر سیستم و کارجویان، صفحه ثبت‌نام و ورود در نظر گرفته می‌شود. مدیر می‌تواند ثبت‌نام کاربران را کنترل کند و کارجو نیز با ثبت‌نام یا ورود به پلتفرم، فعالیت‌هایی مانند جست‌وجوی شغل و ارسال درخواست همکاری را انجام دهد.
  • نمایش فرصت‌های شغلی براساس ترجیحات: ترجیحات کاربر می‌تواند از طریق سیستم فیلتر در برنامه جمع‌آوری شود. برای مثال، اگر فردی فقط به‌دنبال موقعیت شغلی توسعه‌دهنده جنگو باشد، آگهی‌های مرتبط با همین حوزه در فید او نمایش داده می‌شوند.
  • مدیریت پروفایل: کاربر باید بتواند اطلاعات پروفایل خود را براساس نیاز ویرایش، حذف یا تکمیل کند. همچنین باید مکانیزمی برای بازیابی رمز عبور در نظر گرفته شود.
فناوری مورد استفادهکد منبع
فناوری‌های فرانت‌اند مانند PHP، ری‌اکت و جاوااسکریپت
پایتون-جنگو
APIهای خارجی
OpenSourceJobPortal

۲۰. فروشگاه اینترنتی HM Electronic

ساخت یک فروشگاه اینترنتی کامل یکی از بهترین پروژه‌ها برای سطح پیشرفته جنگو است؛ چون در آن باید چند بخش مختلف مانند محصولات، سبد خرید، سفارش‌ها، پرداخت، احراز هویت و مدیریت کاربران را به هم وصل کنید. پروژه HM Electronic یک فروشگاه اینترنتی ایرانی است که از صفر با جنگو توسعه داده شده و علاوه بر فروشگاه، بخش وبلاگ نیز دارد. این پروژه از قابلیت‌هایی مانند سبد خرید، ثبت سفارش، تخفیف، پنل مدیریت اختصاصی، بازیابی رمز عبور، تاریخ شمسی و شمارنده بازدید پشتیبانی می‌کند. همچنین به درگاه ایران‌کیش، سرویس پیامکی کاوه‌نگار و API ترب متصل است و برای افزایش سرعت از Redis استفاده می‌کند.

فناوری مورد استفادهکد منبع
پایتون – جنگو، PostgreSQL / SQLite، Redis، HTML، CSS، جاوااسکریپت، API کاوه‌نگار، تقویم جلالی جنگو، درگاه پرداخت ایران‌کیشhmelectronic.ir

۲۱. وب‌سایت انجمن کنترلرهای ترافیک هوایی ایران

پروژه Iran-ATCA برای انجمن کنترلرهای ترافیک هوایی ایران توسعه داده شده و شامل بخش‌هایی مانند وبلاگ، اطلاعات سازمان، کتابخانه اسناد، مدیریت کاربران و Forum است. در بخش انجمن از Django Channels و WebSocket برای پیاده‌سازی چت و پیام‌رسانی استفاده شده است. همچنین پروژه از تاریخ جلالی، Social Authentication ،CKEditor و قابلیت چندزبانه پشتیبانی می‌کند. به همین دلیل، می‌تواند نمونه خوبی برای تمرین معماری پروژه‌های بزرگ‌تر جنگو باشد.

فناوری مورد استفادهکد منبع
پایتون-جنگو، Django Channels، WebSocket، PostgreSQL، تقویم جلالی جنگو، Social Authentication، Django CKEditor، Django Model Translation و HTML، CSS و جاوااسکریپتIran-ATCA

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا