-
Notifications
You must be signed in to change notification settings - Fork 30
feat: cli and repo rework #171
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
artus9033
wants to merge
67
commits into
main
Choose a base branch
from
feat/cli-and-rework
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+9,220
−616
Open
Changes from all commits
Commits
Show all changes
67 commits
Select commit
Hold shift + click to select a range
69caf1f
chore: move RN CLI example app to dedicated folder
artus9033 7c3025f
feat: bootstrap CLI & add Android commands
artus9033 3a402e5
docs: added CLI docs
artus9033 554ceb4
fix: update path to root project in metro and react-native config files
artus9033 106e4a6
chore: upgraded pods in example app
artus9033 b1d9510
feat: ios support PoC using Rock utilities
artus9033 01ad7b4
chore: bootstrap new RN app with RN CLI
artus9033 7531c35
feat: integrate brownfield into demo Android RN app
artus9033 a570af0
chore: bootstrap demo android app
artus9033 b234988
feat: integrate brownfield RN lib into demo native Android app
artus9033 f24d8af
ci: added CI for new Android app
artus9033 3218e2f
docs: updated links to apps in docs
artus9033 c14f9d7
chore: bootstrap demo iOS app
artus9033 e0f2d2f
feat: added brownfield framework target to RN iOS app
artus9033 37c3700
ci: added pipeline for new iOS app
artus9033 6c51de4
feat: better logging in verbose mode in the CLI
artus9033 aa103e3
feat: cleanup cli flags for CLI
artus9033 ec1b6c0
chore: re-add brownfield target to RN iOS project
artus9033 156bb47
chore: use static frameworks in RN iOS app
artus9033 3cb8f89
fix: cli for iOS
artus9033 6bd8605
chore: deintegrate old, obsolete example app
artus9033 b9d77cd
docs: added README in example/ directory
artus9033 00d8750
chore: static frameworks in RNApp
artus9033 de3a21e
feat: pod install in CLI
artus9033 56a02d5
feat: simplify iOS CLI logic, add xcframework merging
artus9033 6d3875e
feat: integrate brownfield with demo iOS app
artus9033 41ba000
feat: new, nicer UI in demo Android app
artus9033 9d6b18c
ci: build Release variants
artus9033 948eac6
chore: remove obsolete tag in AndroidManifest.xml
artus9033 964c6b5
Merge branch 'main' into feat/cli-and-rework
artus9033 5690431
chore: move cli sources and configuration after merge
artus9033 c5a51fd
chore: proper turborepo configuration
artus9033 cb9f696
chore: provide brownfield bin
artus9033 8f161de
fix(ci): fix ci
artus9033 8e0b6bb
fix: paths in demo RNApp configuration
artus9033 a530ed0
fix: respect --no-install-pods CLI option
artus9033 d59f2b1
ci: merge workflows
artus9033 3c728dc
ci: build iOS Release configuration
artus9033 4fe7530
chore: remove yarn.lock in RNApp
artus9033 268c52b
chore: rename CI workflow, add badge to README.md
artus9033 989c47a
chore: move tester app, reorganize CI workflow
artus9033 df26f82
fix(ci): fix CLI commands in CI
artus9033 aaeeb85
fix(ci): use first available iOS simulator
artus9033 c7d682e
fix(ci): right path to the CLI
artus9033 2763916
fix(ci): use any iOS target
artus9033 639361b
fix(ci): proper native app build commands
artus9033 15b08f4
chore: add android / ios scripts to run the RN app
artus9033 bbd5f2a
chore: rework turbo repo config
artus9033 7199d27
chore: add CONTRIBUTING.md and describe demo apps in docs
artus9033 032ea0e
ci: use Turbo tasks instead of manual commands
artus9033 33c29bf
ci: cache Turbo caches on GH Actions
artus9033 213eb0f
fix: move build:brownfield task to turbo repo root
artus9033 77981c9
fix: iOS app script name
artus9033 5ad0ffd
ci: build framework only for iphoneos to speed up
artus9033 37f6641
ci: build iOS artifact for iphonesimulator to match consumer app dest…
artus9033 7feec98
chore: add linting of gradle plugins to the lint job
artus9033 edc5573
fix: add eslint dev-dependency to react-native-brownfield
artus9033 ef70d95
chore: deintegrate CLI from this PR
artus9033 e81d2a4
ci: cache tester app in CI
artus9033 0e68071
chore: remove cli bin entry from yarn.lock
artus9033 fb99767
chore: rename tester-integrated directory to TesterIntegrated
artus9033 d5c11f5
chore: embed frameworks in Apple example app
artus9033 4529998
fix(ci): fix caching keys
artus9033 4ffde99
ci: rename caching steps
artus9033 290a4b2
ci: cache gradle files
artus9033 74ce796
chore: enable ccache in Podfiles
artus9033 1fe8fd2
chore: separate script for linting gradle plugin sources
artus9033 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,26 @@ | ||
| # Contributing to React Native Brownfield | ||
|
|
||
| ## Project setup | ||
|
|
||
| Run `yarn` in the root of the repository to install all dependencies. | ||
|
|
||
| Depending on your needs, you may need to install CocoaPods in a subset of the below directories: | ||
| - example React Native iOS app: `cd apps/RNApp/ios && pod install` | ||
| - integrated iOS tester app: `cd apps/TesterIntegrated/swift && pod install` | ||
|
|
||
| ## Scripts | ||
|
|
||
| - `lint` - runs linting on all JS/TS source files in the monorepo *[Turbo]* | ||
| - `gradle-plugin:lint` - runs linting on the Brownfield Gradle plugin source code | ||
| - `typecheck` - runs TypeScript type checking on all TS source files in the monorepo *[Turbo]* | ||
| - `build` - runs all `build*` tasks in the Turbo repo - see below for more details *[Turbo]* | ||
| - `release` - releases a new version of React Native Brownfield package using `release-it` | ||
| - `brownfield:plugin:publish:local` - publishes the Brownfield Gradle plugin to your local Maven repository for testing purposes | ||
| - `build:brownfield` - builds the React Native Brownfield package (`packages/react-native-brownfield`) *[Turbo]* | ||
| - `build:docs` - builds the documentation site (`docs/`) *[Turbo]* | ||
| - `build:tester-integrated:android` - builds the Android integrated tester app (`apps/TesterIntegrated/android`) *[Turbo]* | ||
| - `build:tester-integrated:ios` - builds the iOS integrated tester app (`apps/TesterIntegrated/swift`) *[Turbo]* | ||
| - `build:example:android-rn` - builds the example React Native app for Android (`apps/RNApp/android`) *[Turbo]* | ||
| - `build:example:ios-rn` - builds the example React Native app for iOS (`apps/RNApp/ios`) *[Turbo]* | ||
| - `build:example:android-consumer` - builds the example native Android consumer app (`apps/AndroidApp`) *[Turbo]* | ||
| - `build:example:ios-consumer` - builds the example native Apple consumer app (`apps/AppleApp`) *[Turbo]* | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,15 @@ | ||
| *.iml | ||
| .gradle | ||
| /local.properties | ||
| /.idea/caches | ||
| /.idea/libraries | ||
| /.idea/modules.xml | ||
| /.idea/workspace.xml | ||
| /.idea/navEditor.xml | ||
| /.idea/assetWizardSettings.xml | ||
| .DS_Store | ||
| /build | ||
| /captures | ||
| .externalNativeBuild | ||
| .cxx | ||
| local.properties |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| /build |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,71 @@ | ||
| plugins { | ||
| alias(libs.plugins.android.application) | ||
| alias(libs.plugins.kotlin.android) | ||
| alias(libs.plugins.kotlin.compose) | ||
| } | ||
|
|
||
| configurations.all { | ||
| resolutionStrategy { | ||
| // force Gradle to always check for new versions of changing modules | ||
| cacheChangingModulesFor(0, "seconds") | ||
| cacheDynamicVersionsFor(0, "seconds") | ||
| } | ||
| } | ||
|
|
||
| android { | ||
| namespace = "com.callstack.brownfield.android.example" | ||
| compileSdk { | ||
| version = release(36) | ||
| } | ||
|
|
||
| defaultConfig { | ||
| applicationId = "com.callstack.brownfield.android.example" | ||
| minSdk = 24 | ||
| targetSdk = 36 | ||
| versionCode = 1 | ||
| versionName = "1.0" | ||
|
|
||
| testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" | ||
| } | ||
|
|
||
| buildTypes { | ||
| release { | ||
| isMinifyEnabled = false | ||
| proguardFiles( | ||
| getDefaultProguardFile("proguard-android-optimize.txt"), | ||
| "proguard-rules.pro" | ||
| ) | ||
| } | ||
| } | ||
| compileOptions { | ||
| sourceCompatibility = JavaVersion.VERSION_11 | ||
| targetCompatibility = JavaVersion.VERSION_11 | ||
| } | ||
| kotlinOptions { | ||
| jvmTarget = "11" | ||
| } | ||
| buildFeatures { | ||
| compose = true | ||
| } | ||
| } | ||
|
|
||
| dependencies { | ||
| implementation(libs.androidx.core.ktx) | ||
| implementation(libs.androidx.lifecycle.runtime.ktx) | ||
| implementation(libs.androidx.activity.compose) | ||
| implementation(platform(libs.androidx.compose.bom)) | ||
| implementation(libs.androidx.compose.ui) | ||
| implementation(libs.androidx.compose.ui.graphics) | ||
| implementation(libs.androidx.compose.ui.tooling.preview) | ||
| implementation(libs.androidx.compose.material3) | ||
| implementation(libs.androidx.appcompat) | ||
| implementation(libs.brownfieldlib) | ||
| implementation(libs.androidx.fragment.compose) | ||
| testImplementation(libs.junit) | ||
| androidTestImplementation(libs.androidx.junit) | ||
| androidTestImplementation(libs.androidx.espresso.core) | ||
| androidTestImplementation(platform(libs.androidx.compose.bom)) | ||
| androidTestImplementation(libs.androidx.compose.ui.test.junit4) | ||
| debugImplementation(libs.androidx.compose.ui.tooling) | ||
| debugImplementation(libs.androidx.compose.ui.test.manifest) | ||
| } |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.