🔧درباره سامانه یادگیری مستمر دبستان شهید جهان آرا

و اطلاعاتی برای توسعه‌دهندگان بعدی این سامانه

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

این پروژه با استفاده از Next.js 14 توسعه داده شده و به عنوان یک وب اپلیکیشن سمت سرور (SSG) و مبتنی بر React طراحی شده است. معماری این سامانه از Page Routing برای مسیرهای مختلف بهره می‌برد و احراز هویت کاربران از طریق کوکی‌ها (js-cookie) مدیریت می‌شود.

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

با تشکر

محمد لبافی، توسعه‌دهنده سامانه های دبستان شهید جهان آرا

زمستان 1403

🔹اطلاعات کلی🔹

ویژگیمقدار
📂 پلتفرمWeb Application
🚀 فریمورکNext.js 14.2.3
📝 زبان برنامه‌نویسیJavaScript (React-based)
📦 نسخه ReactReact 18
📡 احراز هویتکوکی (js-cookie@3.0.5)
🎨 UI LibraryBootstrap 5.3.3 + React-Bootstrap 2.10.5

🚀 لینک‌های مهم

📌 نحوه راه‌اندازی پروژه

git clone https://github.com/...
cd project-folder
npm install
npm run dev

🌐 صفحات اصلی سایت

🔹 عنوان🔗 لینک
🏠 صفحه اصلی/
📚 پایه‌ها/bases
📖 کتاب‌های درسی/books
👨‍💻 درباره توسعه‌دهنده/about-developer
🔧درباره سامانه/developer

🔑 احراز هویت و کوکی‌ها

سامانه از کوکی‌ها برای احراز هویت استفاده می‌کند:

import Cookies from 'js-cookie';
      *
      *
      *
      * 
const [password, setPassword] = useState('');
const [Err , setErr] = useState(false)
const router = useRouter();

useEffect(() => {
const isAuthenticated = Cookies.get('auth');
if (isAuthenticated === 'true') {
  router.push('/'); // هدایت به صفحه لاگین در صورت عدم احراز هویت
}
}, []);
const handleLogin = (e) => {
e.preventDefault();
  const correctPassword = "****"; // رمز عبور مورد نظر خود
  if (password === correctPassword) {
    setErr(false);
    // تنظیم کوکی با انقضای یک روز
    Cookies.set('auth', 'true', { expires: 1 });
    router.push('/'); // به صفحه محافظت‌شده هدایت می‌شود
  } else {
    setErr('true');
  }
};

📁محتوای فایل package.json:


{
"name": "hamyar-jahanara",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "next dev",
"build": "next build",
"start": "next start",
"lint": "next lint"
},
"dependencies": {
"@react-pdf-viewer/core": "^3.12.0",
"@react-pdf-viewer/default-layout": "^3.12.0",
"bootstrap": "^5.3.3",
"framer-motion": "^11.11.7",
"js-cookie": "^3.0.5",
"mammoth": "^1.8.0",
"next": "14.2.3",
"pdfjs-dist": "^3.11.174",
"react": "^18",
"react-bootstrap": "^2.10.5",
"react-dom": "^18",
"react-pdf": "^9.1.1"
},
"devDependencies": {
"eslint": "^8",
"eslint-config-next": "14.2.3"
}
}
logo

شماره تماس: ۳۳۵۴۳۱۴۱ - ۳۳۵۴۳۱۴۱

کد پستی: 1177935311

© تمامی حقوق محفوظ است

Jahanara school - 2025