A currency conversion application developed in TypeScript using ReactJS library. Application state management is implemented using the useReducer and useContext hooks. Currency rates are fetched from an open API. The currency rates are cached to reduce the number of requests to server. Users have the ability to add custom currency rates and save application data to the local storage. Dialog windows are created using the dialog element, and custom checkboxes are realized.
TypeScript, ReactJS, CoreJS, SCSS modules, React hooks, React Icons