Appon Assignment Library

Full Stack
Web Dev
Appon Assignment Library

Tech Stack

React
Tailwind CSS
Node.js
Express.js
MongoDB
Firebase
Typescript
Javascript
HTML 5
CSS 3
Google Auth

Description

GroupStudy Hub is a MERN stack web app for students to collaboratively create, take, and evaluate assignments. Each user can post new assignments, attempt others', and grade pending submissions from friends. The system supports file-based submissions, grading workflows, and personalized dashboards.

The platform features a custom design, PDF preview in submitted assignments, JWT-based protected routes, responsive layout, and dark/light mode toggle for better user experience.

  • JWT-based auth with token storage in localStorage for Email/Google login
  • Create, view, filter, update, and delete assignments (CRUD)
  • Only the creator can delete an assignment (with secure checks)
  • Users can submit assignments via link + notes with file preview support
  • Admins and users can mark assignments and give feedback
  • Dark/Light theme toggle for accessibility and user preference
  • PDF preview in iframe on submitted assignments page
  • Form validation on all forms with `react-hook-form`
  • Difficulty level filtering using a dropdown menu
  • Responsive design for desktop, tablet, and mobile devices

Page Info

Home Page

Features a banner, navbar with conditional rendering, a features section with cards, an FAQ section, and a footer with copyright.

https://res.cloudinary.com/dqkx3gcnm/image/upload/v1750943676/btd2rfqpojdayjpuug2q.png

Create Assignment Page

Private page for posting new assignments with fields for title, marks, description, level, image URL, and due date (using react-datepicker).

http://res.cloudinary.com/dqkx3gcnm/image/upload/v1747512986/hvrcczlu8htlfk7n7o8d.jpg

Assignments Page

Lists all assignments with filter by difficulty level. Users can view, update, or delete (if creator).

http://res.cloudinary.com/dqkx3gcnm/image/upload/v1747512986/hvrcczlu8htlfk7n7o8d.jpg

Assignment Details Page

Private dynamic route with assignment info and a modal to submit assignment via PDF link and notes.

http://res.cloudinary.com/dqkx3gcnm/image/upload/v1747512986/hvrcczlu8htlfk7n7o8d.jpg

My Submitted Assignments

Private page listing user's submissions with preview (via iframe), status, marks, and feedback.

http://res.cloudinary.com/dqkx3gcnm/image/upload/v1747512986/hvrcczlu8htlfk7n7o8d.jpg

Pending Assignments Page

Lists all ungraded submissions. Users can mark submissions by giving feedback and marks.

http://res.cloudinary.com/dqkx3gcnm/image/upload/v1747512986/hvrcczlu8htlfk7n7o8d.jpg

Login & Register

Firebase auth with Email/Password and Google. Includes client-side validation, error toasts, and token storage.

http://res.cloudinary.com/dqkx3gcnm/image/upload/v1747512986/hvrcczlu8htlfk7n7o8d.jpg