View AndroidManifest.xml
<manifest xmlns:android=""
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

When should you use action creator and when reducer?

Action creator

  • you need to have side effects
  • you need to read from store to decide what to do
  • you need to dispatch more than one action
  • action produced by action creator needs to contain all the data reducer can need to shape the components state


  • should not have any side effects
View Podfile
source ''
project 'MyApp.xcodeproj'
platform :ios, '9.0'
plugin 'cocoapods-keys', {
:project => 'MyApp',
:keys => [
View build.gradle
apply plugin: ""
apply from: "../../node_modules/react-native/react.gradle"
def enableSeparateBuildPerCPUArchitecture = false

Keybase proof

I hereby claim:

  • I am alfonsodev on github.
  • I am alfonsodev ( on keybase.
  • I have a public key ASC8x5RyAQekfCjTYePcqDGs6TYrFOhZ2eXgTVhBzh9CPwo

To claim this, I am signing this object:

View gist:534630b8c3ba3cd267574592654b5d15

Basic manual babel latests + webpack boilerplate.

npm init -y

Install npm modules

npm install --save-dev babel babel-core babel-loader babel-preset-latest-node6 json-loader webpack 

copy the webpack.config.js file to your project.

The webpack.config.js is in this same gist.

View login.css
body {
padding-top: 120px;
padding-bottom: 40px;
background-color: #eee;
.container {
width: 50%;

Refactoring view general checkpints

1. Insert // @flow

in the header of the file, in this way the flowtype binary will not ignore the file, and will statically analise it.

2. Add props types to you view.

Proptypes is deprecated in react-native, the way Facebook team is going forward is using flowtype. To specify the types of properties