Skip to content

React Native skeleton project for iOS/Android, with some extras

License

Notifications You must be signed in to change notification settings

fxdemolisher/react-native-skeleton

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

react-native-skeleton

What is it?

A skeleton project for both Android and iOS, using Facebook's React Native. Contains the usual set up create-react-native-app as well as some other goodies.

Why does this exist?

When you work for companies most of your code belongs to them. Some of us get tired of starting from a blank slate on every new gig. It was time for me to make a skeleton project that is open source and uses the things that I usually include.

Requirements:

  1. iOS Development
    1. XCode + command line tools
    2. NPM/Node
    3. CocoaPods (via brew)
  2. Android Development
    1. Android Studio
    2. Android SDK (w/ build tools 25+)
  3. Patience

What's Included?

  1. JavaScript Layer
    1. Absolute imports (via babel-root-slash-import)
    2. Style color manipilation (via color)
    3. Date/Time manipulation (via momentjs)
    4. Gradients (via react-native-linear-gradient)
    5. Global store (via redux w/ react-redux bindings and redux-thunk)
    6. Persistant redux store (via redux-persist w/ migrations) w/ reset capability
    7. Local network (e.g. wifi) dev bundle loading
    8. Common styling and a responsive grid system
    9. Splash screen on start w/ image
    10. Static image packaging and use
  2. Android
    1. Gradle wrapper (of course)
    2. One configuration closure for app info (e.g. version, build, sdk, etc).
    3. Launcher icon and res customization per build type (e.g. debug/release)
    4. Native->RN environment and application information bridge
    5. Customization points for RN's view managers
    6. Default fonts included (Roboto)
  3. iOS
    1. Base project set up
    2. RN bundling in dev/simulator mode
    3. Native->RN environment and application info bridge
    4. Same default fonts as in Android (Roboto)

Settings Up:

Android

  1. Start up android studio
  2. Import react-native-skeleton/android/build.gradle as a project
  3. Turn off 'configure on demand'
    1. Settings->Build,Execution,Deployment->Compiler
    2. Uncheck 'configure on demand'

iOS

  1. Install Xcode, command line tools, and CocoaPods
  2. Go to $PROJECT_ROOT/ios
    1. Run 'pod install'
  3. Open project in xCode
  4. Run it

TODOs:

  1. Some form of type system (e.g. flowtype or typescript)
  2. More bridges
  3. Stress testing via volunteers

NOTE:

Please submit feature requests, bugs, comments, etc via github's issue tracker

Does it work?

Demo GIF

About

React Native skeleton project for iOS/Android, with some extras

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published