GSoC 2018: Week 2— Project Setup & Sign-In Functionality
Hi folks,
I’m back with the 2nd episode of my GSoC project. It has been a heavy week for me and I was able to achieve the following goals, during the past week.
- Setup the initial project skeleton
- Implement the Sign-In functionality
So, let me go into detail… :)
Project Setup
My mentors had setup a GitHub repository for the Bassa mobile app. So, the first thing I did was forking that repository into my account. You can check it out at https://github.com/gayashanbc/Bassa-mobile.
Then, I started setting up a React Native Project and the following libraries and tools.
- Redux for State management
- React Navigation for screen navigation within the app
- Axios for API interactions
- ESLint for code linting with AirBnB’s style guide for JavaScript
- Jest framework for snapshot testing
- Flow for static type checking
I opened the very first Pull Request with the above changes, which can be viewed at https://github.com/scorelab/Bassa-mobile/pull/1.
Sign-In Implementation
Under the Sign-In implementation, I was completed the following tasks.
- Implemented the UI for the Sign-In screen. React Native animations helped me lot to make the Sign-In experience, much smoother.
- Implemented the initial version of a custom drawer component.
- Implemented User Service to handle the Sign-In process. This task was accompanied by several other modules such as User Saga, Token Saga, User Reducer and App Reducer.
- Implemented navigation up to the Downloads screen.
I opened a Pull Request with the above changes, which can be viewed at https://github.com/scorelab/Bassa-mobile/pull/2.
So, that’s pretty much it of what I did throughout the week and see you again next week with a new episode of my GSoC project.
Good Bye…