An open API service indexing awesome lists of open source software.

https://github.com/abdullahashfaq-ds/gpa-calculator

A Django based application that calculates GPA and generates PDF reports, with a fully responsive frontend and Dockerized deployment.
https://github.com/abdullahashfaq-ds/gpa-calculator

calculator css3 django docker html5 javascript python reportlab tailwindcss

Last synced: 6 months ago
JSON representation

A Django based application that calculates GPA and generates PDF reports, with a fully responsive frontend and Dockerized deployment.

Awesome Lists containing this project

README

        

# GPA Calculator

This project is a Django based web application designed to calculate Grade Point Average (GPA) based on predefined policies, with the ability to generate PDF reports of the results. The application features a modern frontend and supports Dockerized deployment for easy integration across different environments.

## Technologies Used
- **Backend:** Django (Python)
- **Frontend:** HTML5, CSS3, TailwindCSS, JavaScript
- **PDF Generation:** ReportLab
- **Containerization:** Docker, Docker Compose

## Installation

### Prerequisites
Ensure that the following are installed on your local machine:
- Python 3.8+
- Docker and Docker Compose

### Clone the Repository

```bash
git clone [email protected]:abdullahashfaq-ds/GPA-Calculator.git
cd GPA-Calculator
```

### Create Virtual Environment

```bash
python -m venv venv
# On Windows, use:
venv\Scripts\activate
# On Linux/MacOS, use:
source venv/bin/activate
```

### Install Dependencies

```bash
# To set up the production environment:
pip install -r requirements.txt
# To set up the development environment:
pip install -r requirements.dev.txt
```

### Docker Setup

For containerized deployment, ensure Docker is running and use the following commands:

1. Build and start the containers:

```bash
docker-compose up --build
```

2. Access the application at `http://localhost:8000`

## License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.

## Contact

For inquiries or support, please open an issue on GitHub or contact the project maintainer at [[email protected]](mailto:[email protected]).