“I’m not a great programmer; I’m just a good programmer with great habits.” by Kent Beck.
As the lengthy title suggests, this project is designed to provide a stimulating challenge for interns at Malaa Technology.
The main aim of this project is to encourage exploration of new aspects within React Native. Through this process, you'll have the chance to demonstrate your skills and share your insights with us.
The project idea is to develop a React Native app that fetches market stocks to users and the user can see the details of the stock and be able to mark the stock that are interesting for him to see later without searching for it.
As an intern, we encourage you to develop this project following the provided requirements, as they align with our production app standards. Nevertheless, if you come across alternative approaches that you believe could be more effective, please don't hesitate to get in touch with us.
- Expo Go. (Optional)
- React Query & Axios to fetch data.
- Use any local storage package to save the user’s marked stocks (Suggestion: MMKV package)
- React functional components. (Instead of the class components)
- Typescript (Optional)
- Redux state management (Optional)
- FlashList or FlatList for displaying lists of data.
- Good UI implementation not good looking. We know that it might be unfair to ask for good looking but we ask for good implementation of the UI
- File Structuring and reusable components
- Security
This is an api for market stock that is free to use. The resource is Rapid API and the API is build by twelve data. Open the link and create an account then start to use the api. They will give you api key and api host to use the api. Please use this and if you have any other resource you can use it but remember that is not the goal.
We are leaving most of the details for you to figure out and to deal with it.
However the minimum functionalities are the following:
- The user should be able to see the stock market.
- The user should be able to mark stock to see later.
- The user should be able to remove marked stocks.
- The user should be able to refresh the results.
- The app should cache the data to let the user use the app without internet.
- The app should be responsive and useable with many other screens.
This project duration is 14 days only and during this time we will meet three times to evaluate and mentor you during the project, the meetings are the following:
- After three or four days, we meet to see your progress and mentor you.
- After seven or eight day, we meet to see your progress and mentor you.
- After ten days, you submit the app to let us evaluate it.