Title: StudyBud
Live link: https://study-bud-87051.web.app
Online Group Study Web Application
Overview:
This project is a web application designed for online group study with friends. Registered users can create, complete, and grade assignments. The application ensures a collaborative and interactive study environment by allowing users to see and interact with each other's assignments.
Features:
-
User Authentication: Secure login and registration using JWT for both email/password and social login.
-
Assignment Creation and Management: Users can create assignments with titles, descriptions, marks, images, difficulty levels, and due dates. Assignments can be updated and deleted by the creators.
-
Assignment Viewing and Filtering: Assignments are displayed with filtering options based on difficulty level.
-
Assignment Submission and Grading: Users can submit their completed assignments, which can be graded by their peers.
-
Responsive Design: The application is fully responsive, ensuring compatibility with mobile, tablet, and desktop devices.
-
Theme Customization: A theme toggling button allows users to switch between light and dark modes.
-
Private Routes with JWT: Ensures that users stay logged in even after refreshing the page. Installation Guide
Prerequisites:
- Node.js and
- npm installed
- MongoDB database
- Check the package.json files for client and server sides and install the dependencies
Client-Side Installation
- Clone the repository:
- npm install
- Create a .env file:
Create a .env file in the root of the client-side directory and add your Firebase configuration and other environment variables:
Start the development server:
- npm start
- Server-Side Installation
Clone the repository:
- Install dependencies:
- npm install
- Create a .env file:
Create a .env file in the root of the server-side directory and add your MongoDB connection string and other environment variables:
Start the server:
- npm start
- Live Site
- Check out the live site: Live Site URL