Assessment project for Massive Infinity
-
This application use Open Weather Map.
-
Works only for Android. It could works on iOS but I am using Linux.
- React-Native cli
- NodeJs
- Android Studio / XCode - For emulator / simulator
- IDE - IntelliJ IDEA
react-native start
react-native run-android
for androidreact-native run-ios
for iOS.
jest --collect-coverage
- This will generate coverage files in both lcov and html
- Run
eslint --fix <directory to ts files>
-
Architecture.
- redux - State Management
- hook - Component Lifecycle
- redux-thunk - Async redux
- redux-persist - persistent storage
-
Services
- fetch - Network
-
etc:
- es-lint - Linter
- Typescript - Development language
- Jest - Unit tests
react-native --version 3.2.1
This project is licensed under the MIT License - see the LICENSE.md file for details
- I am just a developer who keen to explore and get better at what I am doing.
- Connecting and retrieval of data from API.
- Performing validations and showing error messages appropriately.
- Integration with third-party libraries.
- Implementing best practises of React Native.
- Accurate user interface
- Presentable on all iPhone and Android devices.
- Implementation of React Native best practices, e.g. reusable codes that can be use repetitively, in different screens, projects, or by other team members.
- Structured and clean codes
- Implementation of custom fonts
- Implementation of local database, e.g. SQLite
- I am using Ubuntu as my development for this assessment, iOS could be a problem to run.
- I am not too sure if redux-persist is consider as local database but this is what I choose.
- I didn't tick structure and clean codes since this codebase is purely written by me without peer review. I don't have any saying on this matter.
- I didn't tick implementing best practises of React Native as I am not sure if this is the best practice.
- This app is using sample open weather api https://samples.openweathermap.org/data/2.5/forecast/daily?lat=35&lon=139&cnt=10&appid=f5494a7c084b83729a1ef81f70d182f6 as from what I read, the api that return weather forecast I not available on free tier.
- Do let me know if some of the thing that I didn't tick should be tick and if those that I tick should not be ticked.
- I don't see any font that is required, so I picked Sarpanch without any reason why.