Chromium browser extension that enhances school grade consultation interface by adding advanced ranking and statistical analysis features.
The extension is available on the Chrome Web Store.
It leverages existing interface data to provide detailed analysis and comparisons with other students.
Automatic display of student rank for each grade with success percentage calculation.
| Before | After |
|---|---|
![]() |
![]() |
Advanced statistical visualizations with detailed information on hover.
| Before | After |
|---|---|
![]() |
![]() |
Displayed information:
- Precise grade distribution with histogram
- Class average and median
- Percentage of students who achieved a grade equal or higher
- Your grade position in the distribution
Optional participation in general ranking with anonymous average sharing.
- Automatic minification and packaging of JavaScript files
- ZIP archive generation for distribution
- Chrome and Firefox support
- Dependency management and performance optimization
- Content injection: Dynamic modification of grade pages
- User interface: Configuration popup and preference management
- Data processing: Grade analysis and statistical calculations
- Visualizations: Interactive histograms with D3.js
- RESTful API: Global ranking management
- Database: Secure storage of anonymized data
- Security: HMAC authentication and abuse protection
- Testing: Automated test suite with Jest
- Build system: Node.js script for minification and packaging
- Security analysis: Log monitoring and anomaly detection
- Maintenance: Database cleaning and analysis tools
- Install the extension from the Chrome Web Store
- Navigate to your grade interface
- Rankings and histograms are displayed automatically
- Configure data sharing via the extension icon
# Clone repository
git clone https://github.com/GabrielPlayeur/gestNoteRanking.git
cd gestNoteRanking
# Install server dependencies
cd server
npm install
# Build extension
node extension.build.js
# Start development server
npm startgestNoteRanking/
├── extension/ # Extension source code
│ ├── content.js # Main injection script
│ ├── histogram.js # Chart management
│ ├── popup.js # Configuration interface
│ └── manifest.json # Extension metadata
├── server/ # Node.js backend
│ ├── app.js # Express application
│ ├── routes/ # API routes
│ ├── models/ # Data models
│ ├── utils/ # Security utilities
│ └── tests/ # Automated tests
├── build/ # Compiled files
└── dist/ # Distribution archives
- Anonymization: No personally identifiable data is stored
- Encryption: Secure communications with HMAC signatures
- Monitoring: Automatic detection of abuse attempts
- Compliance: Adherence to data protection standards
Contributions are welcome! Feel free to:
- Report bugs via Issues
- Propose new features
- Submit Pull Requests
- Improve documentation
This project is licensed under MIT - see the LICENSE file for details.
Gabriel Teigné





