Skip to content

Latest commit

 

History

History

README.md

ReactNative

Implementation details

Application written using Redux library (with official React bindings for Redux) which implements the idea of Flux pattern but in quite a simpler way. It means that app has a unidirectional data flow that makes it easy to develop applications that are easy to test and maintain.

Redux scheme

In Redux there's a Store which holds a State object that represents the state of the whole application. Every application event (either from the user or external) is represented as an Action that gets dispatched to a Reducer function. This Reducer updates the Store with a new State depending on what Action it receives. And whenever a new State is pushed through the Store the View is recreated to reflect the changes.

For navigation app uses react-navigation and react-navigation-stack - the community solution as standalone library.

Persistence is implemented via redux-persist library which stores information from Redux State to a database using async-storage extension.

Application also uses react-native-swipeable-row for swipe actions on the list items and moment for date and time manipulations.