Skip to content

jaredsrice/currency_conversion_javascript

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview

I developed a Node.js console application that allows a user to select from a set of supported currencies, enter an amount, and convert that value into another currency using live exchange rate data fetched from an external API. The application includes input validation, error handling, retry logic for failed API requests, and a history system that stores previous conversions during the same program session.

I wrote this software with the goal of becoming more familiar with JavaScript fundamentals and, more specifically, the Node.js runtime environment. Through this project I gained experience working with asynchronous programming, making HTTP requests to an external API, structuring a procedural JavaScript program, and using native ES6 array functions. The project also helped reinforce good design practices such as separating validation logic from the core program flow and organizing code into small, reusable functions.

Software Demo Video

Development Environment

  • Visual Studio Code
  • Node.js runtime environment
  • Chalk library
  • Git / GitHub

Useful Websites

Future Work

  • Refactor the program from a procedural to an object-oriented design.
  • Add the ability to clear or export the conversion history.
  • Expand the project into a backend service where JavaScript handles API requests instead of only running in a terminal.
  • Allow the program to dynamically load supported currencies from the API instead of using a hardcoded list.

AI disclosure

I used ChatGPT as a learning and reference tool throughout this project to help think through design decisions, clarify JavaScript and Node.js syntax, and review pseudocode ideas. I also used it to help better understand concepts such as asynchronous programming, API requests, and general program structure. All final code reflects my own understanding, with AI being primarily used to help me understand the language and tools available.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors