This is a personal, in-browser university GPA calculator for undergraduates. This is an external web application which can be accessed via university's official LMS.
The GPA Calculator is a web application designed to simplify the process of retrieving and calculating students' GPAs. By entering their unique usernames (e.g., ICT/21/940
, EGT/20/123
), students can view their academic performance results directly from the database.
- User-Friendly Interface: Simple and intuitive form to input usernames.
- Real-Time GPA Calculation: Fetches data from the database and calculates GPA instantly.
- Pattern Validation: Ensures that the entered username follows a specific format to avoid errors.
- Secure Backend: Efficiently handles data retrieval and processing with Express and MongoDB.
- Frontend: HTML, CSS, JavaScript
- Backend: PHP
- Database: MySQL
- Others: JSON
To run this project locally, follow the steps below:
-
Clone the repository:
git clone (https://github.com/manuscrithu/refactored-octo-memory) cd gpa-calculator
-
Install dependencies:
npm install
-
Set up the MongoDB database:
- Create a MongoDB database.
- Import your student data and mark sheets.
-
Run the application:
npm start
-
Access the app:
- Open your browser and navigate to
http://localhost:3000
.
- Open your browser and navigate to
- Open the application in your browser.
- Enter your student username in the format:
ICT/XX/XXX
(e.g.,ICT/21/940
)EGT/XX/XXX
(e.g.,EGT/19/123
)BST/XX/XXX
(e.g.,BST/22/456
)
- Click on Check GPA.
- View your GPA results.
gpa-calculator/ │ ├── backEnd/ │ ├── viewResult.php │ └── ... ├── frontEnd/ │ ├── index.html │ └── ... ├── routes/ │ ├── api.js │ └── ... ├── public/ │ ├── css/ │ └── js/ │ ├── package.json ├── server.js └── README.md
Feel free to fork the repository and submit pull requests. Contributions, issues, and feature requests are welcome!
- Fork the project
- Create your feature branch:
git checkout -b feature/your-feature
- Commit your changes:
git commit -m 'Add some feature'
- Push to the branch:
git push origin feature/your-feature
- Open a pull request
For any queries, please contact Bhanuka Wickramasinghe.