Merge branch 'master' into firebase-build-command

This commit is contained in:
Jose Olarte III
2026-10-12 10:21:58 -04:00
46 changed files with 1731 additions and 276 deletions
+18 -18
View File
@@ -10,7 +10,7 @@ This guide explains how to build TimeSafari for different platforms using the co
# 🖥️ Web Development
npm install # setup -- and pkgx.dev `dev` command before this will set environment with npm, etc
npm run build:web:serve -- --test # Start with test endorser server
npm run build:web:dev # Start development server with hot reload with local endorser server
npm run dev # Start development server with hot reload with local endorser server
npm run build:web:prod # Production build
# 📱 Mobile Development
@@ -44,7 +44,7 @@ npm run test:web # Run web tests to verify setup
```bash
# Start web development server
npm run build:web:dev # Opens http://localhost:8080
npm run dev # Opens http://localhost:8080
# For mobile development
npm run build:ios # Opens Xcode with iOS project
@@ -219,13 +219,13 @@ Install dependencies:
npm install
```
## Web Development
## Web Development & Deployment
### Web Development Commands
```bash
# Local development
npm run build:web:dev # Start development server with hot reload
npm run dev # Start development server with hot reload (shortcut for `build:web:dev`)
# Web builds
npm run build:web # Development build (starts dev server with hot reload)
@@ -241,7 +241,7 @@ npm run build:web:docker:prod # Production build with Docker containerizat
### Local Development
Start the development server using `npm run build:web:dev` or `npm run build:web` (both start the development server with hot reload).
Start the development server using `npm run dev` (a shortcut for `npm run build:web:dev`) or `npm run build:web` (both start the development server with hot reload).
### Web Build for Server
@@ -1146,7 +1146,7 @@ export GEM_PATH=$shortened_path
##### 1. Bump the version in package.json & CHANGELOG.md for `MARKETING_VERSION`, then `grep CURRENT_PROJECT_VERSION ios/App/App.xcodeproj/project.pbxproj` and add 1 for the numbered version here:
```bash
cd ios/App && xcrun agvtool new-version 72 && perl -p -i -e "s/MARKETING_VERSION = .*;/MARKETING_VERSION = 1.4.6;/g" App.xcodeproj/project.pbxproj && cd -
cd ios/App && xcrun agvtool new-version 75 && perl -p -i -e "s/MARKETING_VERSION = .*;/MARKETING_VERSION = 1.4.9;/g" App.xcodeproj/project.pbxproj && cd -
# Unfortunately this edits Info.plist directly.
#xcrun agvtool new-marketing-version 0.4.5
```
@@ -1434,8 +1434,8 @@ The recommended way to build for Android is using the automated build script:
##### 1. Bump the version in package.json, then update these versions & run:
```bash
perl -p -i -e 's/versionCode .*/versionCode 72/g' android/app/build.gradle
perl -p -i -e 's/versionName .*/versionName "1.4.6"/g' android/app/build.gradle
perl -p -i -e 's/versionCode .*/versionCode 75/g' android/app/build.gradle
perl -p -i -e 's/versionName .*/versionName "1.4.9"/g' android/app/build.gradle
```
##### 2. Build
@@ -1446,13 +1446,13 @@ perl -p -i -e 's/versionName .*/versionName "1.4.6"/g' android/app/build.gradle
npm run build:android:prod
```
##### 3. Open the project in Android Studio
##### 2.1. (Optional) Open the project in Android Studio
```bash
npx cap open android
```
##### 4. Use Android Studio to build and run on emulator or device
##### 3. Use Android Studio to build and run on emulator or device
#### Android Build from the console
@@ -1460,13 +1460,7 @@ npx cap open android
* Note that this currently fails: `./gradlew build`
To create the `aab` file, `bundle` instead of `build` (but not signed and not usable in Play Store):
```bash
./gradlew bundleDebug -Dlint.baselines.continue=true
```
So, to create a signed `aab` release:
To create a signed `aab` release:
- Setup by adding the app/gradle.properties.secrets file (see properties at top
of app/build.gradle) and the app/time-safari-upload-key-pkcs12.jks file
@@ -1481,6 +1475,12 @@ Firebase is on by default (`firebaseEnabled=true` in `android/gradle.properties`
... and find your `aab` file at app/build/outputs/bundle/release
To create an unsigned debugging bundle (not usable in Play Store):
```bash
./gradlew bundleDebug -Dlint.baselines.continue=true
```
* Gradle packages whatever web bundle was last synced into
`android/app/src/main/assets/public`, even one from a `--test` build. Before
uploading, confirm it has production server defaults:
@@ -2407,7 +2407,7 @@ npm run clean:electron # Electron only
# Clean and rebuild
npm run clean:all
npm install
npm run build:web:dev
npm run dev
```
## Appendix B: Vite Configuration Files Reference