A fully functional, responsive calculator deployed as a web application. This project demonstrates proficiency in Python backend development, minimal frontend integration, and end-to-end continuous deployment (CI/CD).
The calculator is currently deployed and running on Render:
Live Link: https://python-flask-web-calculator.onrender.com
This project was built and deployed using a powerful, terminal-focused toolchain:
| Component | Technology/Tool | Purpose |
|---|---|---|
| Backend Framework | Flask (Python) | The lightweight web framework used to handle routing, user input (POST requests), and computation logic. |
| Web Server | Gunicorn | A production-ready WSGI HTTP server used to run the Flask application securely and efficiently in the deployment environment. |
| Deployment Platform | Render | Used for continuous deployment (CI/CD), automatically building and hosting the application directly from the GitHub repository. |
| Development Editor | Neovim (Ubuntu Terminal) | The entire project was written, configured, and managed within the terminal environment, emphasizing core Linux and command-line skills. |
| Version Control | Git and GitHub | Used to track changes, manage the project's history, and connect to the Render deployment pipeline. |
To clone or fork this repository and run the application locally on your machine, follow these steps.
You need Python 3 and pip installed on your system.
Clone the project from GitHub to your local machine:
git clone https://github.com/YOUR_USERNAME/flask-web-calculator.git
cd flask-web-calculatorIt is best practice to install dependencies in an isolated Python environment:
# Create the virtual environment
python3 -m venv .venv
# Activate the virtual environment
source .venv/bin/activateInstall all necessary libraries (Flask, Gunicorn, etc.) from the requirements.txt file:
(.venv) $ pip install -r requirements.txtStart the Flask development server:
(.venv) $ python3 app.pyThe application will now be running locally. Open your web browser and navigate to the address shown in your terminal (usually http://127.0.0.1:5000/).
When finished, stop the server with CTRL + C and exit the environment:
(.venv) $ deactivateYou can follow my coding journey and other projects on BlueSky: