Here’s the link to my project repository: 👉 https://github.com/MariamIssah/Mobile-Development.git
You can watch my full demo video here: 👉 (Watch the Demo Video Here)
This is a simple Temperature Conversion App I built using Flutter. It allows users to convert temperatures between Celsius and Fahrenheit. I focused on using interactive widgets, maintaining clean state management, and providing a good user experience — including conversion history and responsive layout.
- 🔁 Convert between Celsius and Fahrenheit.
- ✍️ User input through a
TextField. - 🔘 Radio buttons for selecting conversion direction.
- 🎯 Accurate results rounded to two decimal places.
- 📜 History of all conversions during the session.
- 🔄 Works in both portrait and landscape orientation.
| Widget | Purpose |
|---|---|
StatefulWidget |
To manage dynamic updates to the UI. |
TextField |
For entering temperature values. |
RadioListTile |
To allow users to choose conversion direction. |
ElevatedButton |
To trigger the conversion function. |
Text |
For displaying results and conversion history. |
Column, Row, Padding, Expanded, ScrollView |
For clean and responsive layout. |
setState() |
To refresh UI when input or selection changes. |
I used basic formulas to convert between the two temperature units:
-
Celsius → Fahrenheit:
(C × 9/5) + 32 -
Fahrenheit → Celsius:
(F - 32) × 5/9
Each time a user presses the "Convert" button, the app performs the selected conversion and stores the result in a list shown as history.
I made sure my code is:
- Well-formatted with consistent indentation and spacing.
- Clear, with meaningful variable and function names.
- Modular and separated into logical components.
- Commented to explain key sections and logic.
- Documented with this detailed README.
C to F: 25.0 => 77.00
F to C: 98.6 => 37.00
F to C: 32 => 0.00
Newest conversion appears at the top.
| Criteria | What I Did |
|---|---|
| Widgets Usage | I used a mix of input, display, and selection widgets with full state management. |
| Code Quality & Documentation | Clean code, clear variable names, inline comments, and this README. |
| Effort | Added history tracking, rounded output, and input validation. |
| Functionality | Both conversion directions work as expected with proper rounding. |
| UI Design & Creativity | Responsive layout, clean spacing, intuitive interaction, and consistent across orientations. |
- ✅ Physical Android Device: Tecno Spark 10
I made sure to run and test the app on a real device to meet the course requirement. The app functions well and smoothly on my Tecno Spark 10.
Requirements:
- Flutter SDK
- Dart SDK
- Emulator or Android Device
Steps:
git clone https://github.com/MariamIssah/Mobile-Development.git
cd Mobile-Development
flutter pub get
flutter runI have submitted a PDF file:
It includes:
- ✅ GitHub link
- ✅ Demo video link
- ✅ Overview of the project and how I met all rubric requirements
Hi, I’m Mariam Awini Issah, the creator of this app. You can contact me at m.issah1@alustudent.com.