ثبت پیشنهاد روی پروژه
ثبت پروژه مشابه سلام خدمت عزیزان برای یک پروژه بیسیک نیاز به توسعه دهنده full stack دارم
آشنایی با موارد زیر داشته باشند:
javascript , html, css, api(fetch,http,security), react, express, authentication in express and react, sqlite
پروژه ساده سینگل پیج اپلیکیشن هست در فایل project.pdf درج شده شرح کامل پروژه توضیح داده شده است.
requirement های پروژه باید لحاظ شوند
به frequently error ها توجه شود که پروژه خالی از این ارور ها باشد.
کامنت گذاری برای هر قسمت از کد الزامی است
و در اخر یک توضیح کامل در خصوص نحوه اجرای پروژه به صورت ویدیویی آماده شود(زیرا این پروژه باید بیاموزم و نیازمند آگاهی کامل از کد ها هستم)
شرح کامل پروژه به زبان فارسی:(در نظر بگیرید فایل بارگزاری شده ملاک اصلی اجرا هست)
توضیح کلی پروژه
پروژه شامل طراحی و پیادهسازی یک سیستم تیکتینگ وب است که به کاربران اجازه میدهد تیکتهای مختلفی را ایجاد، مشاهده و مدیریت کنند. این پروژه باید با استفاده از React برای سمت کلاینت و Node.js با Express برای سمت سرور پیادهسازی شود. پایگاه داده SQLite خواهد بود و احراز هویت با استفاده از Passport.js انجام میشود.
ویژگیهای اصلی تیکتها
- وضعیت تیکت: تیکتها میتوانند "باز" یا "بسته" باشند.
- دستهبندی تیکت: دستهبندیها شامل "استعلام"، "نگهداری"، "ویژگی جدید"، "اداری" و "پرداخت" هستند.
- مالک تیکت: هر تیکت یک مالک دارد.
- عنوان تیکت: هر تیکت دارای عنوان است.
- زمان ایجاد: هر تیکت دارای زمان ایجاد است.
- متن تیکت: تیکتها شامل بلوکهای متنی هستند که میتوانند شامل تگهای bold و italics باشند. همچنین باید بتوان متنها را با newlines نمایش داد.
قابلیتهای سیستم
1. مشاهده لیست تیکتها:
- هر بازدیدکنندهای میتواند لیست تیکتها را ببیند که شامل عنوان، تاریخ، مالک، دستهبندی و وضعیت است.
2. ایجاد تیکت جدید:
- کاربران احراز هویت شده میتوانند تیکت جدیدی ایجاد کنند. پس از وارد کردن اطلاعات، یک صفحه تأییدیه نمایش داده میشود و سپس تیکت به سرور ارسال میشود.
3. مشاهده جزئیات تیکت:
- کاربران احراز هویت شده میتوانند جزئیات تیکتها را مشاهده کنند و بلوکهای متنی جدیدی اضافه کنند.
4. بستن تیکت:
- مالک تیکت میتواند تیکت را ببندد و کاربران دیگر نمیتوانند به تیکت بسته شده متن جدیدی اضافه کنند.
5. مدیریت تیکتها توسط ادمین:
- ادمینها میتوانند تیکتها را ببندند، باز کنند و دستهبندی آنها را تغییر دهند.
سرور دوم
سرور دوم برای تخمین زمان بسته شدن تیکتها استفاده میشود. این تخمین بر اساس تعداد کاراکترهای عنوان و دستهبندی تیکت محاسبه میشود (تعداد کاراکترها ضربدر 10 به اضافه یک عدد تصادفی بین 1 تا 240).
معماری و تکنولوژیها
- React برای سمت کلاینت به عنوان یک Single Page Application.
- Node.js و Express برای پیادهسازی API های سمت سرور.
- SQLite به عنوان پایگاه داده.
- Passport.js برای احراز هویت و مدیریت نشستها.
- JWT برای دسترسی به سرور دوم.
نیازمندیهای دیتابیس
- پایگاه داده باید شامل حداقل پنج کاربر باشد که دو نفر از آنها ادمین هستند.
- هر کاربر حداقل یک تیکت باز و یک تیکت بسته داشته باشد.
- دستهبندیهای مختلف تیکتها باید حداقل توسط یک تیکت استفاده شوند.
گامهای اجرا
1. راهاندازی محیط توسعه: نصب Node.js، npm و SQLite.
2. ایجاد ساختار پروژه: ساخت دایرکتوریهای client، server و server2.
3. راهاندازی کلاینت: نصب React و کتابخانههای مورد نیاز.
4. راهاندازی سرور: نصب Express، Passport.js و سایر کتابخانههای مورد نیاز.
5. طراحی دیتابیس: ایجاد جداول کاربران، تیکتها و بلوکهای متنی.
6. پیادهسازی احراز هویت: تنظیم Passport.js و مدیریت نشستها.
7. پیادهسازی API ها: ایجاد و مدیریت تیکتها.
8. راهاندازی سرور دوم: پیادهسازی سرور تخمین زمان بسته شدن تیکتها.
9. تست و بررسی نهایی: اطمینان از کارکرد صحیح تمامی بخشها.
ابزارها و کتابخانههای مورد استفاده
- Node.js
- Express
- SQLite
- React
- Passport.js
- JWT
فوری
مشاهده جزئیات پیشنهادهای این پروژه
گزارش تخلف
ثبت پیشنهاد روی پروژه
ثبت پروژه مشابه پروژه را با دوستان خود به اشتراک بگذارید