A modern web application for managing and evaluating assignments using AI-powered similarity checking and grading.
- Python 3.x
- Flask - Web framework
- Flask-CORS - Cross-origin resource sharing
- Flask-SQLAlchemy - Database ORM
- PyTorch - Deep learning framework
- Transformers - Hugging Face transformers library
- Sentence-Transformers - For text embeddings and similarity checking
- Next.js 15 - React framework
- TypeScript - Type-safe JavaScript
- Tailwind CSS - Utility-first CSS framework
- Radix UI - Unstyled, accessible components
- React Hook Form - Form handling
- Zod - Schema validation
- Text Similarity Detection: Uses Sentence-Transformers to detect similar submissions
- Automated Grading: AI-powered evaluation of assignments
- Plagiarism Detection: Advanced similarity checking between submissions
-
Navigate to the backend directory:
cd backend -
Create and activate a virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies:
pip install -r requirements.txt
-
Run the Flask application:
python run.py
-
Navigate to the frontend directory:
cd frontend -
Install dependencies:
npm install # or pnpm install -
Run the development server:
npm run dev # or pnpm dev
- The backend server will run on
http://localhost:5000 - The frontend development server will run on
http://localhost:3000
- Assignment submission and management
- AI-powered similarity checking
- Automated grading system
- User authentication and authorization
- Real-time updates
- Modern and responsive UI
Create a .env file in the backend directory with the following variables:
FLASK_APP=run.py
FLASK_ENV=development
SECRET_KEY=your_secret_key
The API documentation is available at http://localhost:5000/api/docs when the backend server is running.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.