https://github.com/techie-wrb/bash-grader-plus
Bash Grader+ is an automated C/C++ grading system that evaluates code submissions using shell scripts, displays scores through a Flask-based web interface, and maintains a real-time leaderboard using SQLite.
https://github.com/techie-wrb/bash-grader-plus
autograder bash education flask python shell shell-script sqlite webapp
Last synced: 6 months ago
JSON representation
Bash Grader+ is an automated C/C++ grading system that evaluates code submissions using shell scripts, displays scores through a Flask-based web interface, and maintains a real-time leaderboard using SQLite.
- Host: GitHub
- URL: https://github.com/techie-wrb/bash-grader-plus
- Owner: techie-wrb
- Created: 2025-06-25T14:43:13.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-25T16:28:39.000Z (about 1 year ago)
- Last Synced: 2025-06-25T17:35:43.250Z (about 1 year ago)
- Topics: autograder, bash, education, flask, python, shell, shell-script, sqlite, webapp
- Language: HTML
- Homepage: https://github.com/techie-wrb/bash-grader-plus.git
- Size: 11.7 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Bash Grader+
A smart, interactive auto-grading web app for C/C++ programs using Bash, Flask, and SQLite. Easily upload code files, auto-grade them using test cases, view scores, and track results on a live leaderboard.



---
## Features
- **Upload C/C++ code** (single or multiple files)
- **Auto-run test cases** using Bash script
- **Score calculation & remarks**
- **Live leaderboard** with search & sort
- **Auto-delete old submissions**
- **Dark Mode Toggle**
- **SQLite3 database** to store results
- Clean, responsive Bootstrap UI
---
## ech Stack
- **Frontend:** HTML5, CSS3, Bootstrap 5
- **Backend:** Python 3, Flask
- **Scripting:** Bash
- **Database:** SQLite
---
## Setup Instructions
1. **Clone the Repository:**
```bash
git clone git@github.com:techie-wrb/bash-grader-plus.git
cd bash-grader-plus
2. Set up Virtual Environment:
```bash
python3 -m venv venv
source venv/bin/activate
pip install flask
3. Run the Flask App:
```bash
python app.py
Then open http://127.0.0.1:5000/ in your browser
Directory Structure
```pgsql
bash-grader-plus/
├── app.py
├── templates/
│ ├── index.html
│ └── result.html
│ └── leaderboard.html
├── grader/
│ ├── grade.sh
│ ├── test_cases/
│ └── results/
├── submissions/
├── uploads/
├── leaderboard.db
└── README.md
Sample Test Case Format
test_cases/input1.txt
```txt
5 10
test_cases/output1.txt
```txt
15
Author - Aman bijarnia
Acknowledgements
Flask
Bootstrap
SQLite
StackOverflow