A grunt plugin for launching the React Native packager and bundle your files for release
This plugin requires Grunt ~0.4.5
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install react@^0.14.5 react-native@^0.24.1 grunt-react-native --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-react-native');
In your project's Gruntfile, add a section named react_native
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
react_native: {
your_target: {
options: {
// Target-specific options go here.
}
// Target-specific files go here.
},
},
});
Type: Boolean
Default value: false
Setting to true will minify the resulting bundle.
Type: String
Default value: The task's (target) name
Which platform the bundle is made for.
Type: Boolean
Default value: false
Pass the reset cache option to react native packager (see facebook/react-native#4968)
Type: Boolean
Default value: false
Verbose mode.
Type: Boolean
Default value: false
Watch mode, this will launch the react native packager server for development.
grunt.initConfig({
react_native: {
ios: {
options: {
minify: false,
verbose: false,
watch: false,
},
src: 'src/index.ios.js',
dst: 'build/index.ios.bundle',
},
watch: {
options: {
verbose: false,
watch: true,
},
src: 'src/', // The directory to watch and serve
},
},
});
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.
V 2.2.0 Transfer ownership from @alexmick to @feedly
Features :
- Now bundles your assets as well
To do :
- Find a more reliable way to test output files
Fixes :
- Failing tests (react-native's fault)
To do :
- Find a more reliable way to test output files
- Manage assets destination
Supports :
- Bundle task
- Watch task
To do :
- Manage assets destination