https://github.com/asif-102/devs-rocket
https://github.com/asif-102/devs-rocket
blob-storage mongodb mongoose next-auth nextjs14 react-hook-form shadcn-ui stripe tailwindcss tanstack-table vercel-deployment zod
Last synced: 27 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/asif-102/devs-rocket
- Owner: Asif-102
- Created: 2025-01-15T19:12:26.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-08T08:51:11.000Z (12 months ago)
- Last Synced: 2025-02-08T09:23:01.728Z (12 months ago)
- Topics: blob-storage, mongodb, mongoose, next-auth, nextjs14, react-hook-form, shadcn-ui, stripe, tailwindcss, tanstack-table, vercel-deployment, zod
- Language: JavaScript
- Homepage: https://devsrocket.vercel.app/
- Size: 3.4 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
This is a [Next.js](https://nextjs.org/) project bootstrapped with [`create-next-app`](https://github.com/vercel/next.js/tree/canary/packages/create-next-app).
## Getting Started
First, run the development server:
```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
```
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
You can start editing the page by modifying `app/page.js`. The page auto-updates as you edit the file.
This project uses [`next/font`](https://nextjs.org/docs/basic-features/font-optimization) to automatically optimize and load Inter, a custom Google Font.
# DevsRocket Platform Specification
## Overview
The DevsRocket Application is a Learning and Development Platform. This platform is designed for students and instructors, providing tools to create, discover, and complete courses.
---
## DB_Diagram

---
## Features
### 1. User Roles and Registration
#### User Roles
- **Student**: Can enroll in and complete courses.
- **Instructor**: Can create, publish, and manage courses.
#### Registration & Login
**Common Features:**
- **Register Page**:
- Fields:
- First Name
- Last Name
- Email
- Password
- Confirm Password
- Role Selection: `Student` or `Instructor`.
- **Login Page**:
- Fields:
- Email
- Password
- Includes "Forgot Password" option for resetting the password.
- **Profile Settings**: Users can update their personal information.
**Instructor Onboarding:**
- After registration, a guided onboarding process to set up their instructor profile.
---
### 2. Landing Page
#### Features
- **Explore Now Button**: Redirects users to the courses page for browsing.
- **Become an Instructor Button**: Redirects users to the instructor registration page.
- **Course Categories**: Display key categories with call-to-action buttons for category-based browsing.
- **Highlighted Courses**: Showcase top or trending courses with visuals and descriptions.
---
### 3. Navigation Bar
#### Common Elements
- **Register Button**: Links to the registration page for both roles.
- **Login Button**: Links to the login page.
- **Categories Dropdown**: Lists all course categories for easy navigation.
---
### 4. Courses Page
#### Features
- **Filters**:
- By category.
- By price range.
- By rating.
- **Search Bar**: Search courses by name or keyword.
- **Sorting Options**:
- Price: Low to High / High to Low.
- Popularity / Rating.
- **Course Cards**:
- Title
- Image
- Brief Description
- Price
- Ratings
---
### 5. Course Details Page
#### Details to Display
- Course Image and Title.
- Creator Name (Clickable to view instructor profile).
- Short Description.
- Full Description.
- Last Update Date.
- Total Curriculum:
- Number of Modules.
- Number of Lessons.
- Reviews and Testimonials from students.
#### Call-to-Actions
- **Enroll Now Button**: Redirects to login if not logged in.
#### Instructor Section
- Profile Picture and Bio.
- List of other courses by the instructor (with enroll options).
---
### 6. Course Enrollment
#### Process
- **Enroll Button**: Available on the course details page.
- Redirect to login if not already logged in.
- Upon successful enrollment:
- Confirmation email sent to the student.
- Redirect to "Success" page with:
- Browse Courses button.
- Play Course button.
---
### 7. Course Learning Journey
#### Features
- **Progress Tracker**: Tracks student progress.
- **Lessons**:
- Locked content until logged in and enrolled.
- **Quizzes**:
- Interactive and scored.
- Progress saved.
- **Course Completion**:
- Certificate of completion as downloadable PDF.
- **Review Option**:
- Students can leave reviews for the course.
---
### 8. Student-Specific Features
#### Dashboard
- View enrolled courses.
- Progress tracker for each course.
#### Profile
- Update personal information.
#### Enrolled Courses Page
- List of enrolled courses with status (e.g., In Progress, Completed).
---
### 9. Instructor-Specific Features
#### Dashboard
- **Quick Analytics**:
- Total Courses.
- Total Enrollments.
- Total Revenue.
#### Course Management
- **List of All Courses**:
- Published and Unpublished status.
- **Add New Course**:
- Course Title and Description.
- Multi-step process to define curriculum and upload content.
#### Live Sessions
- Schedule live classes with duration and details.
#### Quizzes
- Create reusable quizzes.
- Assign quizzes to multiple courses.
#### Profile Page
- **Publicly Accessible**:
- Name, Bio, and Picture.
- List of courses created.
- Reviews and Ratings.
---
### 10. General Features
#### Responsive Design
- Optimized for desktop, tablet, and mobile.
#### Email Notifications
- Registration confirmation.
- Enrollment confirmation.
- Course completion acknowledgment.
#### Progress Saving
- Automatically save student progress within a course.
#### Public Lesson Preview
- Allow non-logged-in users to preview limited course content (e.g., one unlocked lesson).