🏛️ Parameterized Build for React Native
MIT License
Multiple builds for React Native with different params
The package is in node, not react native!
npm install @moh3n95/react-native-app-builder
⚠️ NOTE: you can download latest bundle
macOS | Windows | Linux
Create a json file and set params
{
"projectBase": "<PROJECT_PATH>",
"settingFilePath": "<YOUR_JSON_SETTING_IN_REACT_NATIVE_PROJECT>",
"workspacePath": "<YOUR_IOS_WORKSPACE>",
"schemePath": "<YOUR_IOS_SCHEME>",
"androidParams": [
{"buildName":"<YOUR_BUILD_NAME>", "<CUSTOM_PARAM>": "<CUSTOM_VALUE>"},
...
],
"iosParams": [
{"buildName":"<YOUR_BUILD_NAME>", "<CUSTOM_PARAM>": "<CUSTOM_VALUE>"},
...
]
}
See examples here
Call function or exec bundle
// import
const RNBuilder = require("@moh3n95/react-native-app-builder");
RNBuilder(<PLATFORM>, <SETTING_FILE_PATH_OR_DIRECTLY_OBJ>).then(()=>{
// Build was successful
})
.catch(e=>{
// Raised error
});
⚠️ NOTE: execute bundle with command line arguments -->
<EXEC_FILE> <PLATFORM> <SETTING_FILE_PATH>
Expected output
---------------------------------
info BUILDING A...
success A FINISHED
---------------------------------
info BUILDING B...
success B FINISHED
---------------------------------
Platform
Value | Type |
---|---|
ios | string |
android | string |
both | string |
Setting file path
OS | Type | FileType | Sample |
---|---|---|---|
macOS | string |
Json |
/User/<YOUR_USER_NAME>/.../<FILE_NAME>.json |
Windows | string |
Json |
<YOUR_DRIVE_NAME>://.../<FILE_NAME>.json |
Any | object |
None |
{ projectBase, ... } // Only unbundled version |
MacOS
{
"projectBase": "/Users/<YOUR_OS_USERNAME>/.../<RN_PROJECT_NAME>", // e.g. : /Users/apple/Desktop/test
"settingFilePath": "<YOUR_JSON_SETTING_IN_REACT_NATIVE_PROJECT>", // e.g. : ./app.json
"workspacePath": "<YOUR_IOS_WORKSPACE>", // e.g. : ./test
"schemePath": "<YOUR_IOS_SCHEME>", // e.g. : test
...
}
Windows
{
"projectBase": "<YOUR_DRIVE_NAME>://.../<RN_PROJECT_NAME>", // e.g. : C://test
"settingFilePath": "<YOUR_JSON_SETTING_IN_REACT_NATIVE_PROJECT>", // e.g. : ./app.json
...
}
Thank you for your interest in contributing! Please feel free to put up a PR for any issue or feature request.
If you think this project is helpful just give me a ⭐️ Star is enough because i don't drink coffee 😃
This project is licensed under the MIT License - see the LICENSE.md file for details
Made with ❤️ by Mohsen Madani.