A lightweight, modular web application for conducting peer evaluations in group projects.
cooperative-evaluation-system/
├── index.html # Main application file
├── css/
│ └── styles.css # Custom styles
├── js/
│ ├── dataManager.js # Data management module
│ └── app.js # Main application logic
├── data/
│ ├── students.csv # Student data (editable)
│ └── config.json # Application configuration
└── README.md # This file
-
Configure the application:
- Edit
data/config.jsonto set your email and preferences - Edit
data/students.csvto add/remove students
- Edit
-
Open the application:
- Open
index.htmlin a web browser - No server required - runs entirely in the browser
- Open
-
Students complete evaluations:
- Select name from dropdown
- Choose group members (3-5 people including themselves)
- Rate each member and submit
-
Submit results:
- Email directly to instructor (opens default email client)
- Download CSV file for manual submission
id,name
4240150,Student Name One
4240151,Student Name Two{
"instructor": {
"email": "professor@university.edu",
"name": "Professor Name"
},
"evaluation": {
"minGroupSize": 3,
"maxGroupSize": 5,
"allowMultipleSubmissions": false
}
}- ✅ Simple login with name selection
- ✅ Intuitive group member selection
- ✅ Clear rating scale (0-100 points)
- ✅ Optional comments for each evaluation
- ✅ Automatic email generation with CSV data
- ✅ Downloadable CSV results
- ✅ Prevents multiple submissions
- ✅ Export all evaluations to CSV
- ✅ View participation statistics
- ✅ Clear/reset data
- ✅ Easy configuration management
- ✅ Responsive design for all devices
When students click "Email Results to Instructor":
- Opens default email client
- Pre-fills recipient, subject, and body
- Includes CSV data in email body
- Student just needs to click "Send"
- Local Storage: All data stored in browser's localStorage
- No Server Required: Completely client-side application
- Privacy: No data leaves the student's computer except via email
- Persistence: Data survives browser refresh/close
Edit data/students.csv:
id,name
NEW_ID,New Student NameEdit data/config.json - modify the ratingScale array:
"ratingScale": [
{ "label": "Excellent", "value": 100, "color": "text-green-700" },
{ "label": "Good", "value": 75, "color": "text-blue-600" }
]Edit data/config.json:
"evaluation": {
"minGroupSize": 2,
"maxGroupSize": 6
}- ✅ Chrome/Edge (recommended)
- ✅ Firefox
- ✅ Safari
⚠️ Internet Explorer (limited support)
- Check file path:
data/students.csv - Verify CSV format (id,name headers)
- Ensure no special characters in file path
- Verify instructor email in
data/config.json - Some browsers may block mailto links
- Student can copy CSV data manually
- Check if browser allows localStorage
- Try in different browser
- Clear browser cache and try again
- For Large Classes: Split into multiple sessions or use batch processing
- For Online Classes: Share the HTML file via LMS or cloud storage
- For Backup: Students can download CSV files as backup
- For Analysis: Combine all CSV files for statistical analysis
- v1.0: Initial modular release with email functionality
- v0.9: Monolithic version (deprecated)
For technical issues or questions:
- Check this README first
- Verify configuration files
- Test in different browser
- Contact your system administrator
Free to use for educational purposes. Please retain attribution.