diff --git a/lms/locale/main.pot b/lms/locale/main.pot
index a5fdf120b..6f8917481 100644
--- a/lms/locale/main.pot
+++ b/lms/locale/main.pot
@@ -1,14 +1,14 @@
 # Translations template for Frappe LMS.
-# Copyright (C) 2024 Frappe
+# Copyright (C) 2025 Frappe
 # This file is distributed under the same license as the Frappe LMS project.
-# FIRST AUTHOR <EMAIL@ADDRESS>, 2024.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: Frappe LMS VERSION\n"
 "Report-Msgid-Bugs-To: jannat@frappe.io\n"
-"POT-Creation-Date: 2024-12-27 16:04+0000\n"
-"PO-Revision-Date: 2024-12-27 16:04+0000\n"
+"POT-Creation-Date: 2025-01-03 16:04+0000\n"
+"PO-Revision-Date: 2025-01-03 16:04+0000\n"
 "Last-Translator: jannat@frappe.io\n"
 "Language-Team: jannat@frappe.io\n"
 "MIME-Version: 1.0\n"
@@ -154,7 +154,7 @@ msgstr ""
 msgid "Add a new question"
 msgstr ""
 
-#: frontend/src/components/QuizPlugin.vue:11
+#: frontend/src/components/AssessmentPlugin.vue:11
 msgid "Add a quiz to your lesson"
 msgstr ""
 
@@ -162,6 +162,10 @@ msgstr ""
 msgid "Add an assessment"
 msgstr ""
 
+#: frontend/src/components/AssessmentPlugin.vue:14
+msgid "Add an assignment to your lesson"
+msgstr ""
+
 #: frontend/src/components/Modals/Question.vue:18
 msgid "Add an existing question"
 msgstr ""
@@ -174,7 +178,7 @@ msgstr ""
 msgid "Add web page to sidebar"
 msgstr ""
 
-#: frontend/src/pages/AssignmentSubmission.vue:44
+#: frontend/src/components/Assignment.vue:65
 msgid "Add your assignment as {0}"
 msgstr ""
 
@@ -391,6 +395,8 @@ msgstr ""
 #. Label of the section_break_16 (Section Break) field in DocType 'Course
 #. Lesson'
 #. Label of the assignment (Link) field in DocType 'LMS Assignment Submission'
+#: frontend/src/pages/AssignmentSubmissionList.vue:12
+#: frontend/src/utils/assignment.js:25
 #: lms/lms/doctype/course_lesson/course_lesson.json
 #: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.json
 #: lms/templates/assignment.html:3
@@ -415,15 +421,23 @@ msgstr ""
 msgid "Assignment Title"
 msgstr ""
 
-#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:31
+#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:33
 msgid "Assignment for Lesson {0} by {1} already exists."
 msgstr ""
 
+#: frontend/src/pages/AssignmentForm.vue:155
+msgid "Assignment saved successfully"
+msgstr ""
+
 #. Description of the 'Question' (Small Text) field in DocType 'Course Lesson'
 #: lms/lms/doctype/course_lesson/course_lesson.json
 msgid "Assignment will appear at the bottom of the lesson."
 msgstr ""
 
+#: frontend/src/pages/AssignmentForm.vue:174
+msgid "Assignments"
+msgstr ""
+
 #: lms/lms/doctype/lms_question/lms_question.py:43
 msgid "At least one option must be correct for this question."
 msgstr ""
@@ -744,6 +758,10 @@ msgstr ""
 msgid "Change"
 msgstr ""
 
+#: frontend/src/components/Assignment.vue:316
+msgid "Changes saved successfully"
+msgstr ""
+
 #. Label of the chapter (Link) field in DocType 'Chapter Reference'
 #. Label of the chapter (Link) field in DocType 'LMS Course Progress'
 #. Label of a Link in the LMS Workspace
@@ -772,7 +790,7 @@ msgstr ""
 msgid "Chapters"
 msgstr ""
 
-#: frontend/src/components/Quiz.vue:201 lms/templates/quiz/quiz.html:120
+#: frontend/src/components/Quiz.vue:203 lms/templates/quiz/quiz.html:120
 msgid "Check"
 msgstr ""
 
@@ -795,7 +813,7 @@ msgstr ""
 msgid "Choices"
 msgstr ""
 
-#: frontend/src/components/Quiz.vue:581 lms/templates/quiz/quiz.html:53
+#: frontend/src/components/Quiz.vue:587 lms/templates/quiz/quiz.html:53
 msgid "Choose all answers that apply"
 msgstr ""
 
@@ -803,7 +821,7 @@ msgstr ""
 msgid "Choose an icon"
 msgstr ""
 
-#: frontend/src/components/Quiz.vue:582 lms/templates/quiz/quiz.html:53
+#: frontend/src/components/Quiz.vue:588 lms/templates/quiz/quiz.html:53
 msgid "Choose one answer"
 msgstr ""
 
@@ -812,12 +830,16 @@ msgstr ""
 msgid "City"
 msgstr ""
 
+#: frontend/src/components/Controls/Link.vue:49
+msgid "Clear"
+msgstr ""
+
 #. Option for the 'Role Preference' (Select) field in DocType 'User'
 #: lms/fixtures/custom_field.json
 msgid "Clearly Defined Role"
 msgstr ""
 
-#: frontend/src/components/LessonHelp.vue:15
+#: frontend/src/components/LessonHelp.vue:30
 msgid "Click on the add icon in the editor and select Quiz from the menu. It opens up a dialog, where you can either select a quiz from the list or create a new quiz. When you select the Create New option it redirects you to the quiz creation page."
 msgstr ""
 
@@ -915,6 +937,7 @@ msgstr ""
 #. Label of the comments (Small Text) field in DocType 'LMS Assignment
 #. Submission'
 #. Label of the comments (Small Text) field in DocType 'LMS Mentor Request'
+#: frontend/src/components/Assignment.vue:161
 #: lms/lms/doctype/exercise_latest_submission/exercise_latest_submission.json
 #: lms/lms/doctype/exercise_submission/exercise_submission.json
 #: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.json
@@ -922,6 +945,10 @@ msgstr ""
 msgid "Comments"
 msgstr ""
 
+#: frontend/src/components/Assignment.vue:139
+msgid "Comments by Evaluator"
+msgstr ""
+
 #. Label of the company (Data) field in DocType 'LMS Job Application'
 #. Label of the company (Data) field in DocType 'Work Experience'
 #: lms/job/doctype/lms_job_application/lms_job_application.json
@@ -984,7 +1011,7 @@ msgstr ""
 msgid "Completed"
 msgstr ""
 
-#: frontend/src/components/BatchStudents.vue:325
+#: frontend/src/components/BatchStudents.vue:353
 msgid "Completed by Students"
 msgstr ""
 
@@ -1034,7 +1061,7 @@ msgid "Continue Learning"
 msgstr ""
 
 #. Option for the 'Type' (Select) field in DocType 'Job Opportunity'
-#: frontend/src/pages/Jobs.vue:117
+#: frontend/src/pages/Jobs.vue:120
 #: lms/job/doctype/job_opportunity/job_opportunity.json
 msgid "Contract"
 msgstr ""
@@ -1043,7 +1070,7 @@ msgstr ""
 msgid "Cookie Policy"
 msgstr ""
 
-#: frontend/src/components/LessonHelp.vue:53
+#: frontend/src/components/LessonHelp.vue:68
 msgid "Copy the URL of the video from YouTube and paste it in the editor."
 msgstr ""
 
@@ -1055,7 +1082,7 @@ msgstr ""
 #. Option for the 'Status' (Select) field in DocType 'Exercise Latest
 #. Submission'
 #. Option for the 'Status' (Select) field in DocType 'Exercise Submission'
-#: frontend/src/components/Quiz.vue:161
+#: frontend/src/components/Quiz.vue:163
 #: lms/lms/doctype/exercise_latest_submission/exercise_latest_submission.json
 #: lms/lms/doctype/exercise_submission/exercise_submission.json
 msgid "Correct"
@@ -1195,7 +1222,7 @@ msgstr ""
 msgid "Course Name"
 msgstr ""
 
-#: frontend/src/pages/CourseDetail.vue:74
+#: frontend/src/pages/CourseDetail.vue:76
 msgid "Course Outline"
 msgstr ""
 
@@ -1320,6 +1347,10 @@ msgstr ""
 msgid "Create a new question"
 msgstr ""
 
+#: frontend/src/pages/Assignments.vue:163
+msgid "Created"
+msgstr ""
+
 #. Label of the currency (Link) field in DocType 'Web Form'
 #. Label of the currency (Link) field in DocType 'LMS Batch'
 #. Label of the currency (Link) field in DocType 'LMS Course'
@@ -1485,8 +1516,8 @@ msgid "Desk"
 msgstr ""
 
 #: frontend/src/components/Modals/DiscussionModal.vue:22
-#: frontend/src/pages/BatchForm.vue:14 frontend/src/pages/CourseForm.vue:28
-#: frontend/src/pages/QuizForm.vue:42
+#: frontend/src/pages/AssignmentForm.vue:27 frontend/src/pages/BatchForm.vue:14
+#: frontend/src/pages/CourseForm.vue:28 frontend/src/pages/QuizForm.vue:42
 msgid "Details"
 msgstr ""
 
@@ -1617,6 +1648,10 @@ msgstr ""
 msgid "Email Templates"
 msgstr ""
 
+#: frontend/src/components/BatchStudents.vue:409
+msgid "Email copied to clipboard"
+msgstr ""
+
 #. Label of the show_emails (Check) field in DocType 'LMS Settings'
 #: lms/lms/doctype/lms_settings/lms_settings.json
 msgid "Emails"
@@ -1697,8 +1732,8 @@ msgid "Enroll Now"
 msgstr ""
 
 #: frontend/src/components/CourseCard.vue:43
-#: frontend/src/components/CourseCardOverlay.vue:103
-#: frontend/src/pages/CourseDetail.vue:31
+#: frontend/src/components/CourseCardOverlay.vue:104
+#: frontend/src/pages/CourseDetail.vue:33
 msgid "Enrolled Students"
 msgstr ""
 
@@ -1715,7 +1750,7 @@ msgstr ""
 msgid "Enrollment Count"
 msgstr ""
 
-#: lms/lms/utils.py:1720
+#: lms/lms/utils.py:1726
 msgid "Enrollment Failed"
 msgstr ""
 
@@ -1731,7 +1766,7 @@ msgstr ""
 msgid "Enter Client Id and Client Secret in Google Settings to send calendar invites for evaluations."
 msgstr ""
 
-#: frontend/src/pages/AssignmentSubmission.vue:96
+#: frontend/src/components/Assignment.vue:110
 msgid "Enter a URL"
 msgstr ""
 
@@ -1743,6 +1778,7 @@ msgstr ""
 msgid "Enter the correct answer"
 msgstr ""
 
+#: frontend/src/components/Assignment.vue:268
 #: frontend/src/components/Modals/AnnouncementModal.vue:105
 #: frontend/src/components/Modals/BulkCertificates.vue:115
 #: frontend/src/components/Modals/ChapterModal.vue:159
@@ -1753,8 +1789,9 @@ msgstr ""
 #: frontend/src/components/Modals/Question.vue:326
 #: frontend/src/components/Modals/StudentModal.vue:69
 #: frontend/src/components/SettingDetails.vue:62
-#: frontend/src/pages/Billing.vue:264 frontend/src/pages/QuizForm.vue:350
-#: frontend/src/pages/QuizForm.vue:365
+#: frontend/src/pages/AssignmentForm.vue:139
+#: frontend/src/pages/AssignmentForm.vue:159 frontend/src/pages/Billing.vue:264
+#: frontend/src/pages/QuizForm.vue:346 frontend/src/pages/QuizForm.vue:361
 #: frontend/src/pages/QuizSubmission.vue:141
 msgid "Error"
 msgstr ""
@@ -1917,7 +1954,7 @@ msgstr ""
 msgid "Featured"
 msgstr ""
 
-#: frontend/src/pages/AssignmentSubmission.vue:21
+#: frontend/src/components/Assignment.vue:61
 msgid "Feel free to make edits to your submission if needed."
 msgstr ""
 
@@ -1936,6 +1973,10 @@ msgstr ""
 msgid "File Type"
 msgstr ""
 
+#: frontend/src/pages/Jobs.vue:47
+msgid "Find the perfect job for you"
+msgstr ""
+
 #: frontend/src/components/Members.vue:38
 #: frontend/src/components/Modals/EditProfile.vue:59
 msgid "First Name"
@@ -1951,7 +1992,7 @@ msgstr ""
 msgid "Flexible Time"
 msgstr ""
 
-#: frontend/src/pages/QuizForm.vue:463
+#: frontend/src/pages/QuizForm.vue:459
 msgid "Form to create and edit quizzes"
 msgstr ""
 
@@ -1965,7 +2006,7 @@ msgid "Free"
 msgstr ""
 
 #. Option for the 'Type' (Select) field in DocType 'Job Opportunity'
-#: frontend/src/pages/Jobs.vue:118
+#: frontend/src/pages/Jobs.vue:121
 #: lms/job/doctype/job_opportunity/job_opportunity.json
 msgid "Freelance"
 msgstr ""
@@ -2007,7 +2048,7 @@ msgid "Full Name"
 msgstr ""
 
 #. Option for the 'Type' (Select) field in DocType 'Job Opportunity'
-#: frontend/src/pages/Jobs.vue:115
+#: frontend/src/pages/Jobs.vue:118
 #: lms/job/doctype/job_opportunity/job_opportunity.json
 msgid "Full Time"
 msgstr ""
@@ -2067,6 +2108,7 @@ msgid "Google Meet Link"
 msgstr ""
 
 #. Label of the grade (Data) field in DocType 'Education Detail'
+#: frontend/src/components/Assignment.vue:154
 #: lms/lms/doctype/education_detail/education_detail.json
 msgid "Grade"
 msgstr ""
@@ -2081,6 +2123,10 @@ msgstr ""
 msgid "Grade Type"
 msgstr ""
 
+#: frontend/src/components/Assignment.vue:149
+msgid "Grading"
+msgstr ""
+
 #. Label of the grant_only_once (Check) field in DocType 'LMS Badge'
 #: lms/lms/doctype/lms_badge/lms_badge.json
 msgid "Grant only once"
@@ -2144,7 +2190,7 @@ msgstr ""
 msgid "Host"
 msgstr ""
 
-#: frontend/src/components/LessonHelp.vue:9
+#: frontend/src/components/LessonHelp.vue:24
 msgid "How to add a Quiz?"
 msgstr ""
 
@@ -2166,7 +2212,7 @@ msgstr ""
 msgid "I am unavailable"
 msgstr ""
 
-#: frontend/src/pages/QuizForm.vue:384
+#: frontend/src/pages/QuizForm.vue:380
 msgid "ID"
 msgstr ""
 
@@ -2176,7 +2222,7 @@ msgstr ""
 msgid "Icon"
 msgstr ""
 
-#: frontend/src/components/LessonHelp.vue:68
+#: frontend/src/components/LessonHelp.vue:11
 msgid "If Include in Preview is enabled for a lesson then the lesson will also be accessible to non logged in users."
 msgstr ""
 
@@ -2259,7 +2305,7 @@ msgstr ""
 #. Option for the 'Status' (Select) field in DocType 'Exercise Latest
 #. Submission'
 #. Option for the 'Status' (Select) field in DocType 'Exercise Submission'
-#: frontend/src/components/Quiz.vue:166
+#: frontend/src/components/Quiz.vue:168
 #: lms/lms/doctype/exercise_latest_submission/exercise_latest_submission.json
 #: lms/lms/doctype/exercise_submission/exercise_submission.json
 msgid "Incorrect"
@@ -2467,7 +2513,7 @@ msgstr ""
 msgid "Jobs"
 msgstr ""
 
-#: frontend/src/components/LiveClass.vue:55
+#: frontend/src/components/LiveClass.vue:58
 #: lms/templates/upcoming_evals.html:15
 msgid "Join"
 msgstr ""
@@ -2757,7 +2803,7 @@ msgstr ""
 #. Group in Course Chapter's connections
 #. Label of the lessons (Data) field in DocType 'LMS Course'
 #: frontend/src/components/CourseCard.vue:34
-#: frontend/src/components/CourseCardOverlay.vue:96
+#: frontend/src/components/CourseCardOverlay.vue:97
 #: lms/lms/doctype/course_chapter/course_chapter.json
 #: lms/lms/doctype/lms_course/lms_course.json
 msgid "Lessons"
@@ -2823,6 +2869,7 @@ msgid "LiveCode URL"
 msgstr ""
 
 #: frontend/src/components/Members.vue:106
+#: frontend/src/pages/Assignments.vue:71
 #: frontend/src/pages/QuizSubmissionList.vue:39
 #: frontend/src/pages/Quizzes.vue:51
 msgid "Load More"
@@ -2852,6 +2899,7 @@ msgstr ""
 msgid "Location Preference"
 msgstr ""
 
+#: frontend/src/components/AssignmentBlock.vue:13
 #: frontend/src/components/NoPermission.vue:28
 #: frontend/src/components/QuizBlock.vue:9 frontend/src/pages/Batch.vue:175
 #: frontend/src/pages/Lesson.vue:24
@@ -2911,7 +2959,7 @@ msgstr ""
 #. Label of the marks (Int) field in DocType 'LMS Quiz Result'
 #: frontend/src/components/Modals/Question.vue:50
 #: frontend/src/components/Modals/Question.vue:99
-#: frontend/src/components/Quiz.vue:94 frontend/src/pages/QuizForm.vue:394
+#: frontend/src/components/Quiz.vue:94 frontend/src/pages/QuizForm.vue:390
 #: frontend/src/pages/QuizSubmission.vue:59
 #: lms/lms/doctype/lms_quiz_question/lms_quiz_question.json
 #: lms/lms/doctype/lms_quiz_result/lms_quiz_result.json
@@ -2968,6 +3016,7 @@ msgstr ""
 #. Label of the member (Link) field in DocType 'LMS Payment'
 #. Label of the member (Link) field in DocType 'LMS Program Member'
 #. Label of the member (Link) field in DocType 'LMS Quiz Submission'
+#: frontend/src/pages/AssignmentSubmissionList.vue:14
 #: frontend/src/pages/QuizSubmission.vue:31
 #: frontend/src/pages/QuizSubmissionList.vue:86
 #: lms/lms/doctype/exercise_latest_submission/exercise_latest_submission.json
@@ -3138,11 +3187,11 @@ msgstr ""
 msgid "Modified By"
 msgstr ""
 
-#: lms/lms/api.py:199
+#: lms/lms/api.py:201
 msgid "Module Name is incorrect or does not exist."
 msgstr ""
 
-#: lms/lms/api.py:195
+#: lms/lms/api.py:197
 msgid "Module is incorrect."
 msgstr ""
 
@@ -3171,12 +3220,17 @@ msgid "My calendar"
 msgstr ""
 
 #. Option for the 'Event' (Select) field in DocType 'LMS Badge'
-#: frontend/src/pages/Batches.vue:30 frontend/src/pages/Courses.vue:45
-#: frontend/src/pages/Programs.vue:14 lms/lms/doctype/lms_badge/lms_badge.json
+#: frontend/src/pages/Assignments.vue:18 frontend/src/pages/Batches.vue:30
+#: frontend/src/pages/Courses.vue:45 frontend/src/pages/Programs.vue:14
+#: lms/lms/doctype/lms_badge/lms_badge.json
 msgid "New"
 msgstr ""
 
-#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:41
+#: frontend/src/pages/AssignmentForm.vue:178
+msgid "New Assignment"
+msgstr ""
+
+#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:43
 msgid "New Assignment Submission"
 msgstr ""
 
@@ -3212,7 +3266,7 @@ msgstr ""
 msgid "New Question"
 msgstr ""
 
-#: frontend/src/pages/QuizForm.vue:454 frontend/src/pages/QuizForm.vue:462
+#: frontend/src/pages/QuizForm.vue:450 frontend/src/pages/QuizForm.vue:458
 #: frontend/src/pages/Quizzes.vue:18
 msgid "New Quiz"
 msgstr ""
@@ -3234,7 +3288,7 @@ msgstr ""
 msgid "New {0}"
 msgstr ""
 
-#: frontend/src/components/Quiz.vue:209 frontend/src/pages/Lesson.vue:84
+#: frontend/src/components/Quiz.vue:211 frontend/src/pages/Lesson.vue:84
 msgid "Next"
 msgstr ""
 
@@ -3242,7 +3296,7 @@ msgstr ""
 msgid "Next Question"
 msgstr ""
 
-#: frontend/src/components/Assessments.vue:66 lms/templates/assessments.html:58
+#: frontend/src/components/Assessments.vue:75 lms/templates/assessments.html:58
 msgid "No Assessments"
 msgstr ""
 
@@ -3263,6 +3317,10 @@ msgstr ""
 msgid "No announcements"
 msgstr ""
 
+#: frontend/src/pages/Assignments.vue:56
+msgid "No assignments found"
+msgstr ""
+
 #: frontend/src/pages/Batches.vue:125
 msgid "No batches found"
 msgstr ""
@@ -3291,11 +3349,11 @@ msgstr ""
 msgid "No introduction"
 msgstr ""
 
-#: frontend/src/pages/Jobs.vue:60
+#: frontend/src/pages/Jobs.vue:63
 msgid "No jobs posted"
 msgstr ""
 
-#: frontend/src/components/LiveClass.vue:61
+#: frontend/src/components/LiveClass.vue:71
 msgid "No live classes scheduled"
 msgstr ""
 
@@ -3311,6 +3369,10 @@ msgstr ""
 msgid "No slots available for this date."
 msgstr ""
 
+#: frontend/src/pages/AssignmentSubmissionList.vue:67
+msgid "No submissions"
+msgstr ""
+
 #: frontend/src/components/UpcomingEvaluations.vue:39
 msgid "No upcoming evaluations."
 msgstr ""
@@ -3359,6 +3421,7 @@ msgstr ""
 msgid "Not Permitted"
 msgstr ""
 
+#: frontend/src/components/Assignment.vue:33
 #: frontend/src/components/BrandSettings.vue:10
 #: frontend/src/components/PaymentSettings.vue:9
 #: frontend/src/components/SettingDetails.vue:10
@@ -3402,7 +3465,7 @@ msgstr ""
 msgid "Once again, congratulations on this significant accomplishment."
 msgstr ""
 
-#: frontend/src/pages/AssignmentSubmission.vue:17
+#: frontend/src/components/Assignment.vue:57
 msgid "Once the moderator grades your submission, you'll find the details here."
 msgstr ""
 
@@ -3419,7 +3482,7 @@ msgstr ""
 msgid "Only files of type {0} will be accepted."
 msgstr ""
 
-#: frontend/src/pages/CourseForm.vue:498 frontend/src/utils/index.js:527
+#: frontend/src/pages/CourseForm.vue:498 frontend/src/utils/index.js:529
 msgid "Only image file is allowed."
 msgstr ""
 
@@ -3548,7 +3611,7 @@ msgid "Pan Number"
 msgstr ""
 
 #. Option for the 'Type' (Select) field in DocType 'Job Opportunity'
-#: frontend/src/pages/Jobs.vue:116
+#: frontend/src/pages/Jobs.vue:119
 #: lms/job/doctype/job_opportunity/job_opportunity.json
 msgid "Part Time"
 msgstr ""
@@ -3679,7 +3742,7 @@ msgstr ""
 msgid "Phone Number"
 msgstr ""
 
-#: frontend/src/components/CourseCardOverlay.vue:141
+#: frontend/src/components/CourseCardOverlay.vue:145
 msgid "Please Login"
 msgstr ""
 
@@ -3699,7 +3762,7 @@ msgstr ""
 msgid "Please click on the following button to set your new password"
 msgstr ""
 
-#: lms/lms/utils.py:1842 lms/lms/utils.py:1846
+#: lms/lms/utils.py:1848 lms/lms/utils.py:1852
 msgid "Please complete the previous courses in the program to enroll in this course."
 msgstr ""
 
@@ -3719,8 +3782,8 @@ msgstr ""
 msgid "Please enter a title."
 msgstr ""
 
-#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:38
-#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:98
+#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:40
+#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:122
 msgid "Please enter a valid URL."
 msgstr ""
 
@@ -3728,7 +3791,7 @@ msgstr ""
 msgid "Please enter a valid time in the format HH:mm."
 msgstr ""
 
-#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:92
+#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:116
 msgid "Please enter the URL for assignment submission."
 msgstr ""
 
@@ -3748,6 +3811,10 @@ msgstr ""
 msgid "Please let us know where you heard about us from."
 msgstr ""
 
+#: frontend/src/components/AssignmentBlock.vue:9
+msgid "Please login to access the assignment."
+msgstr ""
+
 #: frontend/src/components/QuizBlock.vue:5
 msgid "Please login to access the quiz."
 msgstr ""
@@ -3756,7 +3823,7 @@ msgstr ""
 msgid "Please login to access this page."
 msgstr ""
 
-#: lms/lms/api.py:191
+#: lms/lms/api.py:193
 msgid "Please login to continue with payment."
 msgstr ""
 
@@ -3793,7 +3860,7 @@ msgstr ""
 msgid "Please upload a SCORM package"
 msgstr ""
 
-#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:95
+#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:119
 msgid "Please upload the assignment file."
 msgstr ""
 
@@ -4001,9 +4068,9 @@ msgstr ""
 #. Label of the question (Text Editor) field in DocType 'LMS Question'
 #. Label of the question (Link) field in DocType 'LMS Quiz Question'
 #. Label of the question (Text) field in DocType 'LMS Quiz Result'
+#: frontend/src/components/Assignment.vue:17
 #: frontend/src/components/Modals/Question.vue:38
-#: frontend/src/pages/AssignmentSubmission.vue:26
-#: frontend/src/pages/QuizForm.vue:389
+#: frontend/src/pages/AssignmentForm.vue:45 frontend/src/pages/QuizForm.vue:385
 #: lms/lms/doctype/course_lesson/course_lesson.json
 #: lms/lms/doctype/lms_assignment/lms_assignment.json
 #: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.json
@@ -4040,7 +4107,7 @@ msgstr ""
 msgid "Question {0}"
 msgstr ""
 
-#: frontend/src/components/Quiz.vue:186
+#: frontend/src/components/Quiz.vue:188
 msgid "Question {0} of {1}"
 msgstr ""
 
@@ -4049,7 +4116,7 @@ msgstr ""
 msgid "Questions"
 msgstr ""
 
-#: frontend/src/pages/QuizForm.vue:431
+#: frontend/src/pages/QuizForm.vue:427
 msgid "Questions deleted successfully"
 msgstr ""
 
@@ -4077,7 +4144,7 @@ msgstr ""
 msgid "Quiz Submissions"
 msgstr ""
 
-#: frontend/src/components/Quiz.vue:223
+#: frontend/src/components/Quiz.vue:225
 msgid "Quiz Summary"
 msgstr ""
 
@@ -4086,7 +4153,7 @@ msgstr ""
 msgid "Quiz Title"
 msgstr ""
 
-#: frontend/src/pages/QuizForm.vue:343
+#: frontend/src/pages/QuizForm.vue:339
 msgid "Quiz created successfully"
 msgstr ""
 
@@ -4094,7 +4161,7 @@ msgstr ""
 msgid "Quiz is not available to Guest users. Please login to continue."
 msgstr ""
 
-#: frontend/src/pages/QuizForm.vue:362
+#: frontend/src/pages/QuizForm.vue:358
 msgid "Quiz updated successfully"
 msgstr ""
 
@@ -4103,7 +4170,7 @@ msgstr ""
 msgid "Quiz will appear at the bottom of the lesson."
 msgstr ""
 
-#: frontend/src/pages/QuizForm.vue:442 frontend/src/pages/Quizzes.vue:138
+#: frontend/src/pages/QuizForm.vue:438 frontend/src/pages/Quizzes.vue:138
 #: frontend/src/pages/Quizzes.vue:148
 msgid "Quizzes"
 msgstr ""
@@ -4111,7 +4178,7 @@ msgstr ""
 #. Label of the rating (Rating) field in DocType 'LMS Certificate Evaluation'
 #. Label of the rating (Data) field in DocType 'LMS Course'
 #. Label of the rating (Rating) field in DocType 'LMS Course Review'
-#: frontend/src/components/CourseCardOverlay.vue:108
+#: frontend/src/components/CourseCardOverlay.vue:110
 #: frontend/src/components/Modals/Event.vue:86
 #: frontend/src/components/Modals/ReviewModal.vue:20
 #: lms/lms/doctype/lms_certificate_evaluation/lms_certificate_evaluation.json
@@ -4125,10 +4192,6 @@ msgstr ""
 msgid "Rating cannot be 0"
 msgstr ""
 
-#: frontend/src/pages/AssignmentSubmission.vue:30
-msgid "Read the question carefully before attempting the assignment."
-msgstr ""
-
 #. Option for the 'Stage' (Select) field in DocType 'LMS Batch Old'
 #: lms/lms/doctype/lms_batch_old/lms_batch_old.json
 msgid "Ready"
@@ -4307,15 +4370,15 @@ msgstr ""
 msgid "Saturday"
 msgstr ""
 
+#: frontend/src/components/AssessmentPlugin.vue:34
+#: frontend/src/components/Assignment.vue:43
 #: frontend/src/components/Controls/CodeEditor.vue:25
 #: frontend/src/components/Modals/Event.vue:101
 #: frontend/src/components/Modals/Event.vue:129
-#: frontend/src/components/QuizPlugin.vue:23
-#: frontend/src/pages/AssignmentSubmission.vue:7
-#: frontend/src/pages/BatchForm.vue:8 frontend/src/pages/CourseForm.vue:20
-#: frontend/src/pages/JobCreation.vue:8 frontend/src/pages/LessonForm.vue:14
-#: frontend/src/pages/ProgramForm.vue:7 frontend/src/pages/QuizForm.vue:34
-#: frontend/src/pages/QuizSubmission.vue:14
+#: frontend/src/pages/AssignmentForm.vue:21 frontend/src/pages/BatchForm.vue:8
+#: frontend/src/pages/CourseForm.vue:20 frontend/src/pages/JobCreation.vue:8
+#: frontend/src/pages/LessonForm.vue:14 frontend/src/pages/ProgramForm.vue:7
+#: frontend/src/pages/QuizForm.vue:34 frontend/src/pages/QuizSubmission.vue:14
 #: lms/public/js/common_functions.js:405
 msgid "Save"
 msgstr ""
@@ -4357,6 +4420,10 @@ msgstr ""
 msgid "Search"
 msgstr ""
 
+#: frontend/src/pages/Assignments.vue:25
+msgid "Search by title"
+msgstr ""
+
 #: frontend/src/components/Controls/IconPicker.vue:36
 msgid "Search for an icon"
 msgstr ""
@@ -4382,7 +4449,7 @@ msgstr ""
 msgid "Select a question"
 msgstr ""
 
-#: frontend/src/components/QuizPlugin.vue:17
+#: frontend/src/components/AssessmentPlugin.vue:21
 msgid "Select a quiz"
 msgstr ""
 
@@ -4390,6 +4457,10 @@ msgstr ""
 msgid "Select a slot"
 msgstr ""
 
+#: frontend/src/components/AssessmentPlugin.vue:28
+msgid "Select an assignment"
+msgstr ""
+
 #. Label of the send_calendar_invite_for_evaluations (Check) field in DocType
 #. 'LMS Settings'
 #: lms/lms/doctype/lms_settings/lms_settings.json
@@ -4581,7 +4652,7 @@ msgstr ""
 msgid "Stage"
 msgstr ""
 
-#: frontend/src/components/LiveClass.vue:46 frontend/src/components/Quiz.vue:65
+#: frontend/src/components/LiveClass.vue:50 frontend/src/components/Quiz.vue:65
 #: lms/templates/quiz/quiz.html:39
 msgid "Start"
 msgstr ""
@@ -4662,6 +4733,7 @@ msgstr ""
 #. Label of the status (Select) field in DocType 'LMS Course Progress'
 #. Label of the status (Select) field in DocType 'LMS Mentor Request'
 #: frontend/src/components/Modals/Event.vue:91
+#: frontend/src/pages/AssignmentSubmissionList.vue:19
 #: frontend/src/pages/JobCreation.vue:41
 #: lms/job/doctype/job_opportunity/job_opportunity.json
 #: lms/lms/doctype/cohort/cohort.json
@@ -4722,7 +4794,7 @@ msgstr ""
 msgid "Students"
 msgstr ""
 
-#: frontend/src/components/BatchStudents.vue:282
+#: frontend/src/components/BatchStudents.vue:310
 msgid "Students deleted successfully"
 msgstr ""
 
@@ -4744,19 +4816,24 @@ msgstr ""
 msgid "Subject"
 msgstr ""
 
-#: frontend/src/pages/AssignmentSubmission.vue:40
+#: frontend/src/components/Assignment.vue:29
 msgid "Submission"
 msgstr ""
 
-#: frontend/src/pages/QuizForm.vue:30
+#: frontend/src/pages/AssignmentForm.vue:17 frontend/src/pages/QuizForm.vue:30
 msgid "Submission List"
 msgstr ""
 
+#: frontend/src/components/Assignment.vue:10
+#: frontend/src/components/Assignment.vue:13
+msgid "Submission by"
+msgstr ""
+
 #: frontend/src/components/Modals/AssessmentModal.vue:9
 #: frontend/src/components/Modals/BatchCourseModal.vue:9
 #: frontend/src/components/Modals/EvaluationModal.vue:9
 #: frontend/src/components/Modals/Question.vue:338
-#: frontend/src/components/Quiz.vue:214 lms/templates/assignment.html:9
+#: frontend/src/components/Quiz.vue:216 lms/templates/assignment.html:9
 #: lms/templates/livecode/extension_footer.html:25
 #: lms/templates/quiz/quiz.html:128 lms/templates/reviews.html:163
 #: lms/www/new-sign-up.html:32
@@ -4772,10 +4849,12 @@ msgstr ""
 msgid "Submitted {0}"
 msgstr ""
 
+#: frontend/src/components/Assignment.vue:316
 #: frontend/src/components/BatchCourses.vue:150
 #: frontend/src/components/BatchOverlay.vue:135
-#: frontend/src/components/BatchStudents.vue:282
-#: frontend/src/components/CourseCardOverlay.vue:161
+#: frontend/src/components/BatchStudents.vue:310
+#: frontend/src/components/BatchStudents.vue:409
+#: frontend/src/components/CourseCardOverlay.vue:165
 #: frontend/src/components/Modals/AnnouncementModal.vue:99
 #: frontend/src/components/Modals/AssessmentModal.vue:73
 #: frontend/src/components/Modals/BulkCertificates.vue:121
@@ -4785,11 +4864,12 @@ msgstr ""
 #: frontend/src/components/Modals/Event.vue:310
 #: frontend/src/components/Modals/Question.vue:264
 #: frontend/src/components/Modals/Question.vue:315
+#: frontend/src/pages/AssignmentForm.vue:155
 #: frontend/src/pages/CourseForm.vue:461 frontend/src/pages/ProgramForm.vue:229
 #: frontend/src/pages/ProgramForm.vue:251
 #: frontend/src/pages/ProgramForm.vue:272
-#: frontend/src/pages/ProgramForm.vue:298 frontend/src/pages/QuizForm.vue:343
-#: frontend/src/pages/QuizForm.vue:362 frontend/src/pages/QuizForm.vue:431
+#: frontend/src/pages/ProgramForm.vue:298 frontend/src/pages/QuizForm.vue:339
+#: frontend/src/pages/QuizForm.vue:358 frontend/src/pages/QuizForm.vue:427
 msgid "Success"
 msgstr ""
 
@@ -4807,7 +4887,7 @@ msgstr ""
 msgid "Sunday"
 msgstr ""
 
-#: lms/lms/api.py:952
+#: lms/lms/api.py:954
 msgid "Suspicious pattern found in {0}: {1}"
 msgstr ""
 
@@ -4922,6 +5002,10 @@ msgstr ""
 msgid "Thanks and Regards"
 msgstr ""
 
+#: lms/lms/utils.py:1755
+msgid "The batch is full. Please contact the Administrator."
+msgstr ""
+
 #: lms/templates/emails/lms_course_interest.html:5
 msgid "The course {0} is now available on {1}."
 msgstr ""
@@ -4962,14 +5046,22 @@ msgstr ""
 msgid "There are no seats available in this batch."
 msgstr ""
 
-#: frontend/src/components/BatchStudents.vue:165
+#: frontend/src/components/BatchStudents.vue:182
 msgid "There are no students in this batch."
 msgstr ""
 
+#: frontend/src/pages/AssignmentSubmissionList.vue:70
+msgid "There are no submissions for this assignment."
+msgstr ""
+
 #: lms/templates/course_list.html:14
 msgid "There are no {0} on this site."
 msgstr ""
 
+#: lms/lms/doctype/lms_assignment_submission/lms_assignment_submission.py:82
+msgid "There has been an update on your submission for assignment {0}"
+msgstr ""
+
 #: lms/lms/doctype/lms_quiz_submission/lms_quiz_submission.py:42
 msgid "There has been an update on your submission. You have got a score of {0} for the quiz {1}"
 msgstr ""
@@ -4989,11 +5081,15 @@ msgstr ""
 msgid "This certificate does no expire"
 msgstr ""
 
-#: frontend/src/components/CourseCardOverlay.vue:91
+#: frontend/src/components/LiveClass.vue:64
+msgid "This class has ended"
+msgstr ""
+
+#: frontend/src/components/CourseCardOverlay.vue:92
 msgid "This course has:"
 msgstr ""
 
-#: lms/lms/utils.py:1600
+#: lms/lms/utils.py:1606
 msgid "This course is free."
 msgstr ""
 
@@ -5096,10 +5192,12 @@ msgstr ""
 #. Label of the title (Data) field in DocType 'Work Experience'
 #: frontend/src/components/Modals/DiscussionModal.vue:18
 #: frontend/src/components/Modals/LiveClassModal.vue:23
-#: frontend/src/pages/BatchForm.vue:20 frontend/src/pages/CourseForm.vue:32
-#: frontend/src/pages/JobCreation.vue:20 frontend/src/pages/ProgramForm.vue:11
-#: frontend/src/pages/Programs.vue:118 frontend/src/pages/QuizForm.vue:48
-#: frontend/src/pages/Quizzes.vue:116 lms/lms/doctype/cohort/cohort.json
+#: frontend/src/pages/AssignmentForm.vue:32
+#: frontend/src/pages/Assignments.vue:152 frontend/src/pages/BatchForm.vue:20
+#: frontend/src/pages/CourseForm.vue:32 frontend/src/pages/JobCreation.vue:20
+#: frontend/src/pages/ProgramForm.vue:11 frontend/src/pages/Programs.vue:118
+#: frontend/src/pages/QuizForm.vue:48 frontend/src/pages/Quizzes.vue:116
+#: lms/lms/doctype/cohort/cohort.json
 #: lms/lms/doctype/cohort_subgroup/cohort_subgroup.json
 #: lms/lms/doctype/cohort_web_page/cohort_web_page.json
 #: lms/lms/doctype/course_chapter/course_chapter.json
@@ -5135,11 +5233,11 @@ msgstr ""
 msgid "To Date"
 msgstr ""
 
-#: lms/lms/utils.py:1611
+#: lms/lms/utils.py:1617
 msgid "To join this batch, please contact the Administrator."
 msgstr ""
 
-#: frontend/src/components/LessonHelp.vue:34
+#: frontend/src/components/LessonHelp.vue:49
 msgid "To upload Image, Video, Audio or PDF from your system, click on the add icon and select upload from the menu. Then choose the file you want to add to the lesson and it gets added to your lesson."
 msgstr ""
 
@@ -5167,7 +5265,7 @@ msgstr ""
 msgid "Travel"
 msgstr ""
 
-#: frontend/src/components/Quiz.vue:252 lms/templates/quiz/quiz.html:131
+#: frontend/src/components/Quiz.vue:254 lms/templates/quiz/quiz.html:131
 msgid "Try Again"
 msgstr ""
 
@@ -5189,6 +5287,8 @@ msgstr ""
 #. Label of the type (Select) field in DocType 'LMS Quiz Question'
 #: frontend/src/components/Modals/AssessmentModal.vue:22
 #: frontend/src/components/Modals/Question.vue:54
+#: frontend/src/pages/AssignmentForm.vue:39
+#: frontend/src/pages/Assignments.vue:30 frontend/src/pages/Assignments.vue:157
 #: frontend/src/pages/JobCreation.vue:33 frontend/src/pages/Jobs.vue:16
 #: lms/job/doctype/job_opportunity/job_opportunity.json
 #: lms/lms/doctype/lms_assignment/lms_assignment.json
@@ -5199,7 +5299,7 @@ msgstr ""
 msgid "Type"
 msgstr ""
 
-#: frontend/src/components/Quiz.vue:583
+#: frontend/src/components/Quiz.vue:589
 msgid "Type your answer"
 msgstr ""
 
@@ -5280,11 +5380,11 @@ msgstr ""
 msgid "Upload"
 msgstr ""
 
-#: frontend/src/pages/AssignmentSubmission.vue:69
+#: frontend/src/components/Assignment.vue:78
 msgid "Upload File"
 msgstr ""
 
-#: frontend/src/pages/AssignmentSubmission.vue:68
+#: frontend/src/components/Assignment.vue:77
 msgid "Uploading {0}%"
 msgstr ""
 
@@ -5402,7 +5502,7 @@ msgstr ""
 msgid "Welcome to {0}!"
 msgstr ""
 
-#: frontend/src/components/LessonHelp.vue:63
+#: frontend/src/components/LessonHelp.vue:6
 msgid "What does include in preview mean?"
 msgstr ""
 
@@ -5451,7 +5551,7 @@ msgstr ""
 msgid "Write a review"
 msgstr ""
 
-#: frontend/src/pages/AssignmentSubmission.vue:102
+#: frontend/src/components/Assignment.vue:120
 msgid "Write your answer here"
 msgstr ""
 
@@ -5459,11 +5559,11 @@ msgstr ""
 msgid "You already have an evaluation on {0} at {1} for the course {2}."
 msgstr ""
 
-#: lms/lms/api.py:215
+#: lms/lms/api.py:217
 msgid "You are already enrolled for this batch."
 msgstr ""
 
-#: lms/lms/api.py:207
+#: lms/lms/api.py:209
 msgid "You are already enrolled for this course."
 msgstr ""
 
@@ -5528,7 +5628,7 @@ msgstr ""
 msgid "You got"
 msgstr ""
 
-#: frontend/src/components/Quiz.vue:234
+#: frontend/src/components/Quiz.vue:236
 #, python-format
 msgid "You got {0}% correct answers with a score of {1} out of {2}"
 msgstr ""
@@ -5549,7 +5649,7 @@ msgstr ""
 msgid "You have been enrolled in this batch"
 msgstr ""
 
-#: frontend/src/components/CourseCardOverlay.vue:162
+#: frontend/src/components/CourseCardOverlay.vue:166
 msgid "You have been enrolled in this course"
 msgstr ""
 
@@ -5557,6 +5657,10 @@ msgstr ""
 msgid "You have got a score of {0} for the quiz {1}"
 msgstr ""
 
+#: frontend/src/pages/Assignments.vue:60
+msgid "You have not created any assignments yet. To create a new assignment, click on the \"New\" button above."
+msgstr ""
+
 #: frontend/src/pages/Quizzes.vue:65
 msgid "You have not created any quizzes yet. To create a new quiz, click on the \"New Quiz\" button above."
 msgstr ""
@@ -5569,7 +5673,7 @@ msgstr ""
 msgid "You haven't enrolled for any courses"
 msgstr ""
 
-#: frontend/src/components/CourseCardOverlay.vue:142
+#: frontend/src/components/CourseCardOverlay.vue:146
 msgid "You need to login first to enroll for this course"
 msgstr ""
 
@@ -5582,7 +5686,7 @@ msgstr ""
 msgid "You've applied to become a mentor for this course. Your request is currently under review."
 msgstr ""
 
-#: frontend/src/pages/AssignmentSubmission.vue:15
+#: frontend/src/components/Assignment.vue:55
 msgid "You've successfully submitted the assignment."
 msgstr ""
 
@@ -5626,7 +5730,7 @@ msgstr ""
 msgid "Your score is"
 msgstr ""
 
-#: frontend/src/components/Quiz.vue:227
+#: frontend/src/components/Quiz.vue:229
 msgid "Your submission has been successfully saved. The instructor will review and grade it shortly, and you'll be notified of your final result."
 msgstr ""
 
@@ -5675,7 +5779,7 @@ msgstr ""
 msgid "posted by"
 msgstr ""
 
-#: frontend/src/pages/QuizForm.vue:390
+#: frontend/src/pages/QuizForm.vue:386
 msgid "question_detail"
 msgstr ""
 
@@ -5691,7 +5795,7 @@ msgstr ""
 msgid "you can"
 msgstr ""
 
-#: lms/lms/api.py:749 lms/lms/api.py:757
+#: lms/lms/api.py:751 lms/lms/api.py:759
 msgid "{0} Settings not found"
 msgstr ""