A comprehensive platform for conducting secure online assessments with anti-cheating measures including copy-paste prevention and tab switching detection.
- Secure login/registration system
- Take assessments in a secure environment
- View assessment history and evaluation results
- Anti-cheating measures:
- Copy/paste prevention
- Tab switching detection
- Context menu disabling
- Create, edit, and delete assessments
- Review student submissions
- Provide grades and feedback
- Monitor student activity
- Node.js with Express.js
- MongoDB with Mongoose
- JWT for authentication
- RESTful API design
- React with TypeScript
- React Router for navigation
- TailwindCSS for styling
- Context API for state management
- Node.js (v14+)
- MongoDB (local or Atlas)
- Clone the repository
git clone <repository-url>
- Install backend dependencies
cd backend
npm install
- Create a .env file in the backend directory with the following variables:
PORT=5000
MONGODB_URI=mongodb://localhost:27017/secure-notepad
JWT_SECRET=your_jwt_secret_key
JWT_EXPIRY=7d
- Install frontend dependencies
cd ../frontend
npm install
- Start the backend server
cd ../backend
npm run dev
- Start the frontend development server
cd ../frontend
npm run dev
- Access the application:
- Frontend: http://localhost:5173
- Backend API: http://localhost:5000
- Register an admin account at
/admin-register
- Create assessments from the admin dashboard
- Review and evaluate submissions
- Register a student account at
/register
- View available assessments on the dashboard
- Take assessments in the secure environment
- View submitted assessments and feedback
- JWT-based authentication
- Password hashing with bcrypt
- Secure input fields
- Role-based access control
- Protection against tab switching
- Copy-paste prevention
- Context menu disabling