This is the repository for the Jifunze Learning Management System.
- Next.js 14
- React
- Typescript
- Shadcn UI
- Tailwind
- Cloudinary
- Prisma
- MongoDB
- PayPal
- Browse & filter courses
- Purchase courses using PayPal
- Mark chapters as completed or uncomple
- Progress calculation of each course
- Student dashboard
- Instructor mode
- Create new courses
- Create new chapters
- Easily reorder chapter position with drag and drop
- Upload thumbnails, attachments and videos using UploadThing
- Video processing using Cloudinary
- HLS video player using Cloudinary
- Rich text editor for chapter description
- Authentication using Clerk
- ORM using Prisma
- MongoDB database using MongoDB Atlas
Node version 20.x.x
git clone https://github.com/theS3Interdev/jifunze-lms.git
pnpm install
CLERK_SECRET_KEY=
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=
NEXT_PUBLIC_CLERK_SIGN_IN_URL=
NEXT_PUBLIC_CLERK_SIGN_UP_URL=
CLOUDINARY_API_SECRET=
NEXT_PUBLIC_CLOUDINARY_API_KEY=
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=
DATABASE_URL=
PAYPAL_APP_SECRET=
NEXT_PUBLIC_PAYPAL_CLIENT_ID=
UPLOADTHING_APP_ID=
UPLOADTHING_SECRET=
NEXT_PUBLIC_APP_URL=
NEXT_PUBLIC_INSTRUCTOR_ID=
Add PostgreSQL Database
pnpm dlx prisma generate
pnpm dlx prisma db push
pnpm dev
Running commands with npm pnpm [command]
command | description |
---|---|
dev |
Starts a development instance of the app |