This is a home loan calculator that can calculate home loan repayments and provide details like payment breakdown and payment schedule for each calculate result.
- Home Loan Calculator
Visit the official website of this app!
This is a Malaysia Secondary Form 3 ASK (Computer Science Basics) year-end Python project made possible with Tkinter and Eel.
Our task is to create a home loan calculator that can:
- Calculate home loan repayment
- Provide the details for every month's repayment
This app only works on Windows.
To use this program on Mac, you can download the distributable version here, provided you have Python installed. Read the instructions here.
You need to have Chrome installed as this app uses Chrome to show the result history or the details of a specific calculate result.
Download and install the app here or from the official website. (This only works on Windows machines.)
or...
If you don't want to install anything and have Python installed in your system,
or, if you are on Mac,
download
the distributable version. Extract the home-loan-calculator
folder out from
the zip file. Install the required modules by executing
pip install -r requirements.txt
in your system command shell. Then, run
python main.py
to run this program.
Optionally, before you install the required modules, you can open up a new virtual environment with
python -m venv venv
(make sure that you execute this command in the~/home-loan-calculator
directory), then activate the virtual environment byvenv\scripts\activate
. Only then you install the required modules by executingpip install -r requirements.txt
. Then, to run the program, at the same directory, executepython main.py
.Learn more about Python virtual environments here.
Launch the app and and you will see the home page coming up.
- Fill in the loan details. Press enter or click to calculate.
- The monthly repayment will show up. You can click to see more details like payment breakdown and payment schedule.
- Click "Results" at home page and a loading screen will show up while Chrome is starting.
- Wait patiently for Chrome to load everytime. It will take some time especially the first time you launch the app on that day.
- In case you rushed things and the app cannot detect it (which cause the home/calculator page to not show up after you closed the Chrome window) and the loading screen ended up there forever, you can click "Something's wrong, relaunch Chrome" to restart Chrome.
- Avoid clicking "Something's wrong, relaunch Chrome" if everything is working correctly already.
- You can see all the (calculate) result history here.
- The results by default are sorted by date, which means the most recent result history comes first. You can sort by other options as well, e.g. property price, interest rate, period, etc.
- You can delete them by clicking on the rubbish bin icon if you feel like not needing them anymore. To delete multiple records at once, multi-select the records by clicking on them, then click "Delete" at the top left corner.
- To view the details for each of the result, click on the "external link icon" (the icon next to the rubbish bin icon).
- You can also search for records as well using the search bar on top.
Upper part
Lower part
- You can see all the details for a specific result here:
- loan details
- payment breakdown in the form of a doughnut chart.
- payment schedule details (repayment details for every month until the > loan is cleared) in the form of a: > - table > - line chart > You can export the payment schedule data as CSV for your own use > later. \
At the line chart, you can click "Balance" to toggle its line off to > have a more detailed view of "Principal" and "Interest".
- If you have forgotten how to use the app, you can always come back here to this user manual by clicking on the "See the user manual" button.
- If you need further help or want to report a problem, you can create a issue here or contact me via email.
I'm so glad to announce that this app supports dark mode!
To turn it on or off, just turn on/off the dark mode switch at home page.
This app uses Sun-Valley ttk theme by rdbende.