only-bible-app v3.7.2+24
git clone https://git.pyrossh.dev/only-bible-app
The only bible app you will ever need. No ads. No in-app purchases. No distractions.
Makefile
| 0228ae8 | 1 | .PHONY: run test analyze macos ios android android-device list-devices setup release release-android release-ios release-macos |
| fe24dd6 | 2 | |
| fe24dd6 | 3 | setup: |
| fe24dd6 | 4 | brew install fastlane |
| fe24dd6 | 5 | mkdir -p assets/bibles |
| fe24dd6 | 6 | dart run scripts/generate_flatbuffers.dart |
| fe24dd6 | 7 | |
| fe24dd6 | 8 | run: |
| fe24dd6 | 9 | flutter run |
| fe24dd6 | 10 | |
| fe24dd6 | 11 | test: |
| fe24dd6 | 12 | flutter test |
| fe24dd6 | 13 | |
| fe24dd6 | 14 | analyze: |
| fe24dd6 | 15 | flutter analyze |
| fe24dd6 | 16 | |
| fe24dd6 | 17 | macos: |
| fe24dd6 | 18 | flutter run -d macos |
| fe24dd6 | 19 | |
| fe24dd6 | 20 | ios: |
| fe24dd6 | 21 | open -a Simulator |
| fe24dd6 | 22 | sleep 2 |
| fe24dd6 | 23 | xcrun simctl boot "iPhone 17" 2>/dev/null || true |
| fe24dd6 | 24 | flutter run -d $$(flutter devices 2>/dev/null | grep "simulator" | head -1 | awk '{print $$1}') |
| fe24dd6 | 25 | |
| fe24dd6 | 26 | android: |
| fe24dd6 | 27 | emulator -avd $$(emulator -list-avds 2>/dev/null | head -1) & |
| fe24dd6 | 28 | flutter run -d $$(adb devices 2>/dev/null | grep -v "List" | grep "device" | head -1 | awk '{print $$1}') |
| fe24dd6 | 29 | |
| fe24dd6 | 30 | android-device: |
| fe24dd6 | 31 | flutter run -d $$(flutter devices 2>/dev/null | grep -i "android\|emulator" | head -1 | awk '{print $$1}') |
| fe24dd6 | 32 | |
| fe24dd6 | 33 | list-devices: |
| fe24dd6 | 34 | @echo "--- iOS Simulators ---" |
| fe24dd6 | 35 | xcrun simctl list devices available 2>/dev/null | grep -v "unavailable" |
| fe24dd6 | 36 | @echo "" |
| fe24dd6 | 37 | @echo "--- Android Emulators ---" |
| fe24dd6 | 38 | emulator -list-avds 2>/dev/null || echo "No AVDs found (set ANDROID_HOME)" |
| 0228ae8 | 39 | |
| 8b87a9b | 40 | # Builds, uploads and publishes to the Play Store, App Store and Mac App |
| 8b87a9b | 41 | # Store in one go. Screenshots are left untouched by default - regenerating |
| 8b87a9b | 42 | # and re-uploading them on every release is slow and usually a no-op since |
| 8b87a9b | 43 | # the UI rarely changes. Set UPDATE_SCREENSHOTS=1 to regenerate and upload a |
| 8b87a9b | 44 | # fresh set as part of the release, e.g. `make release UPDATE_SCREENSHOTS=1`. |
| 8b87a9b | 45 | UPDATE_SCREENSHOTS_FLAG = $(if $(filter 1 true yes,$(UPDATE_SCREENSHOTS)),update_screenshots:true,) |
| 8b87a9b | 46 | |
| 8b87a9b | 47 | release: release-android release-ios release-macos |
| 0228ae8 | 48 | |
| 0228ae8 | 49 | release-android: |
| 8b87a9b | 50 | cd android && fastlane deploy $(UPDATE_SCREENSHOTS_FLAG) |
| 0228ae8 | 51 | |
| 0228ae8 | 52 | release-ios: |
| 8b87a9b | 53 | cd ios && fastlane release $(UPDATE_SCREENSHOTS_FLAG) |
| 0228ae8 | 54 | |
| 0228ae8 | 55 | release-macos: |
| 8b87a9b | 56 | cd macos && fastlane release $(UPDATE_SCREENSHOTS_FLAG) |