Skip to content

🔧 API imkoniyatlari: 👥 Foydalanuvchilarni ro‘yxatdan o‘tkazish va avtorizatsiya qilish 📚 Kurslar va darslar (lessons) bilan ishlash 📝 Testlar va topshiriqlar (assignments)ni boshqarish 📊 Baholash tizimi (grades, progress) 🔒 JWT yoki Token orqali xavfsiz autentifikatsiya 🧑‍🏫 O‘qituvchi va talabalar rollari 📆 Kalendar va jadval integra

Notifications You must be signed in to change notification settings

Xusanbek0039/ITC-LMS-API

Repository files navigation

ITC-LMS-API

🎓 ITC-LMS-API

ITC-LMS-API — bu Django va Django REST Framework asosida ishlab chiqilgan zamonaviy ta’lim boshqaruv tizimi (Learning Management System) uchun backend RESTful API. Loyiha IT Creative o‘quv markazi uchun mo‘ljallangan bo‘lib, o‘quvchilar, o‘qituvchilar va adminlar o‘rtasida to‘liq LMS jarayonlarini boshqarishga xizmat qiladi.

⚙️ Frontend ilova (React, Vue yoki mobil ilova) bilan ishlash uchun kuchli backend asos.


🛠️ Texnologiyalar

Python Django DRF PostgreSQL JWT


✨ Asosiy imkoniyatlar

  • 🔐 JWT token orqali avtorizatsiya (SimpleJWT)
  • 👥 Ro‘yxatdan o‘tish, kirish va foydalanuvchini boshqarish
  • 🧑‍🏫 O‘qituvchi va 👨‍🎓 Talaba rollari
  • 📚 Kurslar va darslar (modullar)ni yaratish va tahrirlash
  • 📝 Testlar va topshiriqlarni yuborish va ko‘rish
  • 📊 Baholash va reyting tizimi
  • 🔍 Filterlash, pagination, qidiruv
  • 📄 Swagger va ReDoc bilan avtomatik API hujjatlar

📦 O‘rnatish bo‘yicha qo‘llanma

# 1. Loyihani yuklab oling
git clone https://github.com/xusanbek0039/ITC-LMS-API.git
cd ITC-LMS-API

# 2. Virtual muhit yaratish
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate

# 3. Talablar ro‘yxatini o‘rnatish
pip install -r requirements.txt

# 4. Ma’lumotlar bazasini migratsiya qilish
python manage.py migrate

# 5. Admin foydalanuvchi yaratish
python manage.py createsuperuser

# 6. Serverni ishga tushirish
python manage.py runserver
Endpoint Tavsif
POST /api/token/ JWT orqali tizimga kirish
POST /api/token/refresh/ Tokenni yangilash
GET /api/users/ Foydalanuvchilar ro‘yxati
GET /api/courses/ Kurslar ro‘yxati
GET /api/assignments/ Topshiriqlar ro‘yxati
GET /api/results/ Talaba natijalari

📄 Swagger & ReDoc (API hujjat) Django REST Framework orqali avtomatik yaratilgan API hujjatlarni ko‘rish:

Swagger UI

ReDoc UI

🌍 Loyihaning asosiy maqsadi Bu loyiha orqali IT Creative ta’lim markazining LMS platformasi uchun:

O‘qituvchi va talabalar o‘rtasida aloqa qilish

Kurslar va testlar bilan ishlash

Natijalarni baholash

Va barcha bu jarayonlarni yagona REST API orqali boshqarish imkoniyati yaratilgan.

📁 Loyiha tuzilmasi (asosiy)

ITC-LMS-API/
├── api/                # Asosiy app (kurs, user, test)
├── itc_lms/            # Django project papkasi
├── requirements.txt    # Kutubxonalar ro‘yxati
├── manage.py
├── db.sqlite3          # SQLite DB (PostgreSQL ham qo‘llab-quvvatlanadi)
└── README.md

👨‍💻 Muallif Ism: Husanbek

Web: husanbek-coder.uz

YouTube: @it_creative

Email: husanbekdev@gmail.com

📜 Litsenziya Ushbu loyiha MIT litsenziyasi asosida tarqatiladi — erkin foydalanishingiz mumkin, faqat mualliflik huquqlarini saqlab qoling.

⭐️ Yordam bering Agar sizga loyiha yoqqan bo‘lsa, yulduzcha ⭐️ bosishni unutmang! Bu men uchun katta motivatsiya!

Agar sizga kerak bo‘lsa, quyidagilarni ham qo‘shishim mumkin:
- `.env` fayl namunasi
- Dockerfile + `docker-compose.yml`
- Postman yoki Swagger JSON hujjatlari

Shunchaki ayting — men doim tayyorman!

About

🔧 API imkoniyatlari: 👥 Foydalanuvchilarni ro‘yxatdan o‘tkazish va avtorizatsiya qilish 📚 Kurslar va darslar (lessons) bilan ishlash 📝 Testlar va topshiriqlar (assignments)ni boshqarish 📊 Baholash tizimi (grades, progress) 🔒 JWT yoki Token orqali xavfsiz autentifikatsiya 🧑‍🏫 O‘qituvchi va talabalar rollari 📆 Kalendar va jadval integra

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published