Skip to content

Commit 05cced6

Browse files
committed
build(mobile): add EAS config and dev-client scaffolding
eas.json profiles (development/device/preview/production), expo-dev-client install, bundle IDs, notification + location plugins, Android runtime permissions. Unblocks on-device builds via `bun run build:dev:*`.
1 parent f6b15f0 commit 05cced6

4 files changed

Lines changed: 110 additions & 3 deletions

File tree

apps/mobile/app.config.ts

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,18 @@ const config: ExpoConfig = {
1111
newArchEnabled: true,
1212
ios: {
1313
supportsTablet: true,
14+
bundleIdentifier: "com.aqib.qibla",
15+
infoPlist: {
16+
NSLocationWhenInUseUsageDescription:
17+
"Qibla uses your location to show nearby mosques, prayer times, and the direction to Mecca.",
18+
ITSAppUsesNonExemptEncryption: false,
19+
},
1420
config: {
1521
googleMapsApiKey: process.env.GOOGLE_MAPS_API_KEY_IOS,
1622
},
1723
},
1824
android: {
25+
package: "com.aqib.qibla",
1926
adaptiveIcon: {
2027
backgroundColor: "#E6F4FE",
2128
foregroundImage: "./assets/images/android-icon-foreground.png",
@@ -24,6 +31,11 @@ const config: ExpoConfig = {
2431
},
2532
edgeToEdgeEnabled: true,
2633
predictiveBackGestureEnabled: false,
34+
permissions: [
35+
"ACCESS_FINE_LOCATION",
36+
"ACCESS_COARSE_LOCATION",
37+
"POST_NOTIFICATIONS",
38+
],
2739
config: {
2840
googleMaps: {
2941
apiKey: process.env.GOOGLE_MAPS_API_KEY_ANDROID,
@@ -49,6 +61,20 @@ const config: ExpoConfig = {
4961
},
5062
],
5163
"expo-secure-store",
64+
"expo-dev-client",
65+
[
66+
"expo-notifications",
67+
{
68+
color: "#2e5d45",
69+
},
70+
],
71+
[
72+
"expo-location",
73+
{
74+
locationWhenInUsePermission:
75+
"Qibla uses your location to show nearby mosques and direction to Mecca.",
76+
},
77+
],
5278
],
5379
experiments: {
5480
typedRoutes: true,

apps/mobile/eas.json

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
{
2+
"cli": {
3+
"version": ">= 12.0.0",
4+
"appVersionSource": "remote"
5+
},
6+
"build": {
7+
"development": {
8+
"developmentClient": true,
9+
"distribution": "internal",
10+
"channel": "development",
11+
"ios": {
12+
"simulator": true,
13+
"resourceClass": "m-medium"
14+
},
15+
"android": {
16+
"buildType": "apk",
17+
"gradleCommand": ":app:assembleDebug"
18+
}
19+
},
20+
"development-device": {
21+
"extends": "development",
22+
"ios": {
23+
"simulator": false,
24+
"resourceClass": "m-medium"
25+
}
26+
},
27+
"preview": {
28+
"distribution": "internal",
29+
"channel": "preview",
30+
"ios": {
31+
"resourceClass": "m-medium"
32+
},
33+
"android": {
34+
"buildType": "apk"
35+
}
36+
},
37+
"production": {
38+
"channel": "production",
39+
"autoIncrement": true,
40+
"ios": {
41+
"resourceClass": "m-medium"
42+
},
43+
"android": {
44+
"buildType": "app-bundle"
45+
}
46+
}
47+
},
48+
"submit": {
49+
"production": {}
50+
}
51+
}

apps/mobile/package.json

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,21 @@
33
"main": "expo-router/entry",
44
"version": "1.0.0",
55
"scripts": {
6-
"start": "expo start",
6+
"start": "expo start --dev-client",
7+
"start:go": "expo start",
78
"reset-project": "node ./scripts/reset-project.js",
8-
"android": "expo start --android",
9-
"ios": "expo start --ios",
9+
"android": "expo run:android",
10+
"ios": "expo run:ios",
1011
"web": "expo start --web",
12+
"prebuild": "expo prebuild --clean",
13+
"prebuild:ios": "expo prebuild --clean --platform ios",
14+
"prebuild:android": "expo prebuild --clean --platform android",
15+
"build:dev:ios": "eas build --profile development --platform ios",
16+
"build:dev:android": "eas build --profile development --platform android",
17+
"build:dev:device": "eas build --profile development-device --platform ios",
18+
"build:preview": "eas build --profile preview --platform all",
19+
"build:prod": "eas build --profile production --platform all",
20+
"doctor": "expo-doctor",
1121
"lint": "expo lint",
1222
"typecheck": "tsc --noEmit"
1323
},
@@ -27,6 +37,7 @@
2737
"class-variance-authority": "^0.7.1",
2838
"expo": "~54.0.33",
2939
"expo-constants": "~18.0.13",
40+
"expo-dev-client": "~6.0.20",
3041
"expo-font": "~14.0.11",
3142
"expo-haptics": "~15.0.8",
3243
"expo-image": "~3.0.11",

bun.lock

Lines changed: 19 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)