firstArachne0116 / MasterMindApp

React Native. Online Scrabble Match Game.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MasterMind

This is the react-native codebase for the Master Mind application.

Run locally

  1. Run npm install
  2. Run cd ios && pod install to install iOS native libraries
  • Need CocoaPods installed. Install it globally with brew install cocoapods
  1. Run npm start on a separate terminal to start the package server
  2. Run react-native run-ios to start an iOS simulator

Deploy

Currently, we use Bitrise (pw in Keyweb) for deployments to Apple's "App Store" (iOS) and Google's "Play Store" (Android).

Warning: The incrementBuild command can't update String instances of the version. Failing to update all instances of the version will result in Apple or Google rejecting the app binary.

  1. Run npm run incrementBuild
  2. Open src/config.js and manually increment the BUILD and VERSION strings in the baseConfig:
const baseConfig = {
  VERSION : 'v0.1.1',
  BUILD : '10',
  SYSTEM_ID : 'imagineSystemId',
  PROJECT_ID : 'imagineProjectId',
}
  1. Open android/app/build.gradle. Manually update the versionName string:
defaultConfig {
    applicationId "com.dataquest.mastermind"
    minSdkVersion rootProject.ext.minSdkVersion
    targetSdkVersion rootProject.ext.targetSdkVersion
    versionCode 10
    versionName "v0.1.1 build 10"
}
  1. Open android/app/src/main/AndroidManifest.xml. Manually update the android:versionCode and android:versionName strings:
<manifest 
  xmlns:android="http://schemas.android.com/apk/res/android"
  package="com.dataquest.mastermind"
  android:versionCode="10" 
  android:versionName="v0.1.1 build 10">
  1. Increment the value of the CFBundleShortVersionString in ios/mastermind/Info.plist
  2. Increment version in package.json if it's a new version
  3. Ensure that all the version / build codes that incrementBuild automagically incremented actually did increment.
  4. Commit these changes to your branch and push to the branch's remote.
  5. Go to Bitrise's dashboard (credentials in Keyweb)
  6. Open the mastermind-native-ui app.
  7. Click on "Start/Schedule a Build"
  8. Enter your branch name into the Branch field
  9. Type in the new version name into the Message field
  10. Select the deploy-ios workflow for iOS to deploy to iOS
  11. Repeat steps 7, 8, and 9, and then select the deploy-android workflow to deploy to Android

Design Docs

Points of Contact

  • Project Managment Lead: Hannah Sloan
  • Design Lead: Mona Bazzaz
  • Development Lead: Michael Wedd
  • Developers: Michael Jin

Troubleshooting

Fix build issues running locally

If you run into build errors, follow the below steps in turn, stopping when you're able to successfully build the app:

  1. Restart the packager server (Metro/Haste)
  2. Use these terminal commands in the UI repo root to clear react and packager server caches:
watchman watch-del-all
rm -rf $TMPDIR/react-*
rm -rf $TMPDIR/haste-*
rm -rf $TMPDIR/metro-*
  1. Open XCode and hold the keys Cmd + Shift + K to clean the project

About

React Native. Online Scrabble Match Game.


Languages

Language:Python 80.9%Language:JavaScript 17.9%Language:Java 0.5%Language:Objective-C 0.3%Language:Shell 0.2%Language:Starlark 0.1%Language:Ruby 0.1%Language:C 0.0%Language:Swift 0.0%