0% found this document useful (0 votes)
33 views1 page

Currency Converter App Development

The candidate is asked to develop a currency converter mobile application for both iOS and Android that can handle obscure currencies. The app must include features like currency exchange rates, charts, watchlists and offline access to previous search data. It is due within one week and should demonstrate clear, elegant code that follows design guidelines and includes testing. The completed or partially completed app should be shared on GitHub along with instructions.

Uploaded by

Troll
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
33 views1 page

Currency Converter App Development

The candidate is asked to develop a currency converter mobile application for both iOS and Android that can handle obscure currencies. The app must include features like currency exchange rates, charts, watchlists and offline access to previous search data. It is due within one week and should demonstrate clear, elegant code that follows design guidelines and includes testing. The completed or partially completed app should be shared on GitHub along with instructions.

Uploaded by

Troll
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Shardings Meet

React Native Assignment

The candidate needs to develop a currency converter mobile application which works
seamlessly in iOS as well as Android devices. The currency converter should work even
for very fewer known currencies such as the Armenian dram, Iranian Rial etc. The UI/UX
of the application is up to the candidate. The candidate must make sure all the
components are visible in all devices. The mobile app should have the following features:

 Getting the exchange rates of one currency to another.


 Exchange rate chart between the 2 currencies.
 Pin most searched currency pairs.
 Offline mode with last live data when the user was online.
 History based search which shows user’s recent searched currency pairs.
 Watchlist where the user can view their favorite currency pairs.

Here are the points we positively value: -


 Clarity, elegance, and maintainability of code.
 A clear architecture, which recognizes SOLID principles.
 Knowledge of react native design guidelines.
 Unit testing.

The deadline for the submission of the exercise is one week from acknowledgment. We
appreciate a mobile app with all features included but an unfinished app is also accepted
if the deadline approaches.

The candidate will be required to share the complete source code of the application via
GitHub, along with a readme file explaining how to install, run the mobile app. Upload the
apk to Google drive and share the link in the readme file.

Fill this form after you’re done with the assignment: - Submission link

Common questions

Powered by AI

React Native enhances user experience across different devices by allowing developers to use a single codebase to build applications for iOS and Android, ensuring consistent performance and appearance on both platforms. It provides native components that adapt the UI to the platform's design standards, making it easier to maintain a cohesive look and feel. This is crucial for applications like a currency converter, where user accessibility and interaction with features like exchange rate charts and history are paramount .

When developing a mobile application like the currency converter in React Native, the SOLID principles are important to ensure a clear architecture. These principles include Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion. Each component should have a single responsibility, making the system easier to maintain and extend. Moreover, adhering to React Native's design guidelines is crucial for optimized UI/UX across both iOS and Android platforms .

The offline functionality of a currency converter app is enabled by caching the last live data when the user was online. This allows users to access exchange rates and view their recent searches and watchlists even without an internet connection. Offline functionality is important as it ensures continuity of service and user convenience, particularly in areas with unreliable internet access. This capability also enhances user engagement by not disrupting their experience due to connectivity issues .

Unit tests are critical for a React Native application like a currency converter because they verify that individual components function correctly. This ensures each part of the application, from data fetching to UI rendering, works as intended. Unit tests contribute to app quality by preventing regressions, facilitating maintenance, and promoting confidence in code changes. Through testing, developers can more easily identify faulty logic or integration issues, leading to a more robust and reliable application .

The feature of 'History-based search' in a currency converter app improves user convenience by allowing users to quickly revisit recent currency pair searches. This saves time by eliminating the need to repeatedly enter currency pairs manually. It streamlines the user flow, making the software more responsive to user habits and preferences, thereby enhancing overall user experience by providing a sense of customization and efficiency .

The integration of a 'Watchlist' feature in a currency converter application improves user interaction by allowing users to easily access frequently checked currency pairs, saving time and effort of manual input each time. This feature enhances user satisfaction by providing personalization, enabling quick comparisons, and frequently accessing data that matters most to them, ultimately creating a more engaging and user-centered experience .

Handling lesser-known currencies in a currency converter app poses challenges such as limited data availability and ensuring accurate conversion rates. To address these, developers can integrate APIs that provide comprehensive currency data, including lesser-known currencies like the Armenian dram or Iranian Rial. Ensuring the app supports an extensive list of currencies enhances user satisfaction by meeting diverse needs. Handling potential edge cases and ensuring the app design accommodates any currency information uniformly are crucial aspects of the solution .

To deploy and share a React Native application like the currency converter on platforms like GitHub and Google Drive, the following steps should be followed: First, ensure the app is built and all features are tested thoroughly. Create a repository on GitHub, commit the complete source code, and include a readme file detailing installation and running instructions. An APK file should be generated and uploaded to Google Drive, then the link to the APK should be included in the readme. These steps ensure that others can easily access, test, and provide feedback on the application .

Pinning most-searched currency pairs in a currency converter application keeps frequently used pairs easily accessible, simplifying the user's workflow by minimizing the need for repeated searches. This feature contributes to user efficiency by providing quick and direct access to important information, enhancing the speed and ease of navigation within the app. It caters to personalized user requirements, which is valuable for users who monitor specific currency fluctuations regularly .

Maintaining clarity, elegance, and maintainability in the code of a mobile application ensures that the codebase is easily understandable and modifiable by current and future developers. Clear and well-structured code reduces the risk of bugs and enhances the ease of adding new features or updating existing ones. This focus on quality principles is essential for long-term project sustainability, especially for applications that need to evolve rapidly or integrate with various services, such as a currency converter .

You might also like