Logo Logo
EN

Full-stack online learning platform with course management, quizzes, and interactive features for graduation thesis

Wishzy

Introductionh3

Full-stack online learning platform with course management, quizzes, and interactive features for graduation thesis.

Featuresh3

Authentication & Authorization:

  • Register/Login with JWT authentication
  • Google OAuth 2.0 login
  • Role-based access: Admin, Instructor, Student
  • Profile management and instructor following

Course Management:

  • Create, edit, delete courses
  • Video upload via Bunny CDN
  • Manage chapters and lectures
  • Tag and categorize courses
  • Publish/Unpublish courses

Learning:

  • Video player with HLS streaming
  • Auto-save learning progress
  • Lecture notes
  • Quizzes and assessments
  • Completion certificates

Payment:

  • VNPay integration
  • Shopping cart and checkout
  • Voucher codes
  • Order history

Interaction:

  • Threaded comments and replies
  • Course reviews and ratings
  • Wishlist
  • Dashboard statistics

Search & Discovery:

  • Course search
  • Filter by category, price, rating
  • Promotional banners
  • Blog/Posts

Admin Panel:

  • User management
  • Course management
  • Revenue statistics
  • Banner and voucher management

Screenshotsh3

Wishzy Screenshot 1 Wishzy Screenshot 2 Wishzy Screenshot 3 Wishzy Screenshot 4 Wishzy Screenshot 5 Wishzy Screenshot 6 Wishzy Screenshot 7 Wishzy Screenshot 8 Wishzy Screenshot 9 Wishzy Screenshot 10

Tech Stackh3

Frontend

  • Next.js 15.3.4 (App Router)
  • React 19.2.0
  • TypeScript 5
  • Tailwind CSS 4
  • Shadcn/ui Components
  • TanStack Query (React Query)
  • Zustand (State Management)
  • Video.js (Video Player)

Backend

  • NestJS 10
  • TypeScript 5
  • TypeORM
  • PostgreSQL
  • JWT Authentication
  • Passport.js
  • Swagger UI (API Documentation)
  • Cloudinary (Image Upload)
  • Bunny CDN (Video Streaming)
  • VNPay (Payment Gateway)

DevOps

  • Docker & Docker Compose
  • Nginx (Reverse Proxy)

Getting Startedh3

Terminal window
git clone <your-repo-url>
cd wishzy
cd be
docker-compose up -d --build
docker-compose exec app npm run migration:run
docker-compose exec app npm run seed
cd ../frontend
cp .env.example .env
pnpm install
pnpm dev

Services: