On this page

System Overview

2.1 Project Description

The Node.js project serves as a currency converter API, utilizing the Open Exchange Rates API to retrieve the latest currency exchange rates. It employs OrbitDB for storing the latest currency data and implements conditional checks to update forex rates every 24 hours and crypto rates every 5 minutes, based on user-provided timestamps.

2.2 Technologies Used

  • Node.js: JavaScript runtime environment
  • OrbitDB: Peer-to-peer distributed database
  • Open Exchange Rates API: External API for currency exchange rates

2.3 Architecture Overview

The architecture of the project adheres to a client-server paradigm, where the Node.js server serves as the primary backend API service. Clients interact with the server through HTTP requests, initiating currency conversion processes. These requests are meticulously handled by the server, which orchestrates the retrieval of relevant data from the Open Exchange Rates API. Subsequently, the acquired data is persistently stored and managed within OrbitDB, ensuring seamless access and efficient management of currency information.

This architecture not only fosters scalability and maintainability but also guarantees the delivery of accurate and timely currency conversion services to clients. Moreover, the integration of conditional logic enables automated updates of foreign exchange rates on a daily basis and cryptocurrency rates every 5 minutes, meticulously synchronized with user-provided timestamps. This architecture ensures robustness, scalability, and responsiveness in handling currency conversion requests while maintaining data integrity and consistency.