Skip to content

Commit 6a512fc

Browse files
committed
add mobile app
1 parent fa2f563 commit 6a512fc

122 files changed

Lines changed: 2547 additions & 966 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

apps/mobile/.expo/README.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
> Why do I have a folder named ".expo" in my project?
2+
3+
The ".expo" folder is created when an Expo project is started using "expo start" command.
4+
5+
> What do the files contain?
6+
7+
- "devices.json": contains information about devices that have recently opened this project. This is used to populate the "Development sessions" list in your development builds.
8+
- "settings.json": contains the server configuration that is used to serve the application manifest.
9+
10+
> Should I commit the ".expo" folder?
11+
12+
No, you should not share the ".expo" folder. It does not contain any information that is relevant for other developers working on the project, it is specific to your machine.
13+
Upon project creation, the ".expo" folder is already added to your ".gitignore" file.

apps/mobile/.expo/devices.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"devices": [
3+
{
4+
"installationId": "FF1011A1-7709-4E6F-AF64-252B30FCADD0",
5+
"lastUsed": 1770829226228
6+
}
7+
]
8+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"dependencies": "62e12000924490815307cbb3563a58ad4bd80acb",
3+
"devDependencies": "ae47ca99acc86f63163636de2f4b783604c9727c"
4+
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/* eslint-disable */
2+
import * as Router from 'expo-router';
3+
4+
export * from 'expo-router';
5+
6+
declare module 'expo-router' {
7+
export namespace ExpoRouter {
8+
export interface __routes<T extends string | object = string> {
9+
hrefInputParams: { pathname: Router.RelativePathString, params?: Router.UnknownInputParams } | { pathname: Router.ExternalPathString, params?: Router.UnknownInputParams } | { pathname: `/modal`; params?: Router.UnknownInputParams; } | { pathname: `/_sitemap`; params?: Router.UnknownInputParams; } | { pathname: `${'/(tabs)'}/explore` | `/explore`; params?: Router.UnknownInputParams; } | { pathname: `${'/(tabs)'}` | `/`; params?: Router.UnknownInputParams; };
10+
hrefOutputParams: { pathname: Router.RelativePathString, params?: Router.UnknownOutputParams } | { pathname: Router.ExternalPathString, params?: Router.UnknownOutputParams } | { pathname: `/modal`; params?: Router.UnknownOutputParams; } | { pathname: `/_sitemap`; params?: Router.UnknownOutputParams; } | { pathname: `${'/(tabs)'}/explore` | `/explore`; params?: Router.UnknownOutputParams; } | { pathname: `${'/(tabs)'}` | `/`; params?: Router.UnknownOutputParams; };
11+
href: Router.RelativePathString | Router.ExternalPathString | `/modal${`?${string}` | `#${string}` | ''}` | `/_sitemap${`?${string}` | `#${string}` | ''}` | `${'/(tabs)'}/explore${`?${string}` | `#${string}` | ''}` | `/explore${`?${string}` | `#${string}` | ''}` | `${'/(tabs)'}${`?${string}` | `#${string}` | ''}` | `/${`?${string}` | `#${string}` | ''}` | { pathname: Router.RelativePathString, params?: Router.UnknownInputParams } | { pathname: Router.ExternalPathString, params?: Router.UnknownInputParams } | { pathname: `/modal`; params?: Router.UnknownInputParams; } | { pathname: `/_sitemap`; params?: Router.UnknownInputParams; } | { pathname: `${'/(tabs)'}/explore` | `/explore`; params?: Router.UnknownInputParams; } | { pathname: `${'/(tabs)'}` | `/`; params?: Router.UnknownInputParams; };
12+
}
13+
}
14+
}
Loading
Loading
Loading

apps/mobile/@types/i18next.d.ts

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
// import the original type declarations
2+
import 'i18next';
3+
4+
// import all namespaces (for the default language, only)
5+
import enAuth from '../../kit/auth/src/i18n/locales/en/p_auth.json';
6+
import enOrgOnboarding from '../../kit/organization/src/i18n/locales/en/p_org-onboarding.json';
7+
import enOrgSettings from '../../kit/organization/src/i18n/locales/en/p_org-settings.json';
8+
import enClient from '../locales/en/client.json';
9+
import enCommon from '../locales/en/common.json';
10+
import enNotification from '../locales/en/notification.json';
11+
import enOrder from '../locales/en/order.json';
12+
import enProduct from '../locales/en/product.json';
13+
14+
declare module 'i18next' {
15+
interface CustomTypeOptions {
16+
defaultNS: 'common';
17+
resources: {
18+
common: typeof enCommon;
19+
client: typeof enClient;
20+
notification: typeof enNotification;
21+
order: typeof enOrder;
22+
product: typeof enProduct;
23+
p_auth: typeof enAuth;
24+
'p_org-settings': typeof enOrgSettings;
25+
'p_org-onboarding': typeof enOrgOnboarding;
26+
};
27+
}
28+
}

apps/mobile/app.config.ts

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
import { ConfigContext, ExpoConfig } from '@expo/config';
2+
3+
export default ({ config }: ConfigContext): ExpoConfig => ({
4+
...config,
5+
runtimeVersion: '1.0.0',
6+
name: 'Creatorem AI Chat Demo',
7+
slug: 'creatorem-ai-chat-demo',
8+
version: '1.0.0',
9+
orientation: 'portrait',
10+
icon: './assets/pwa-logo/apple-icon-180.png',
11+
scheme: 'creatorem-ai-chat-demo',
12+
userInterfaceStyle: 'automatic',
13+
newArchEnabled: true,
14+
jsEngine: 'hermes',
15+
updates: {
16+
url: 'https://u.expo.dev/31ba4806-f6c8-44ad-b6ca-52e410442b55',
17+
},
18+
splash: {
19+
image: './assets/pwa-logo/apple-splash-1242-2688.jpg',
20+
resizeMode: 'contain',
21+
backgroundColor: '#ffffff',
22+
},
23+
ios: {
24+
jsEngine: 'jsc',
25+
supportsTablet: true,
26+
bundleIdentifier: 'com.creatorem.ai-chat-demo',
27+
},
28+
android: {
29+
// for native tabs
30+
softwareKeyboardLayoutMode: 'pan',
31+
adaptiveIcon: {
32+
// foregroundImage: './assets/images/adaptive-icon.png',
33+
backgroundColor: '#ffffff',
34+
},
35+
package: 'com.creatorem.ai-chat-demo',
36+
edgeToEdgeEnabled: true,
37+
},
38+
web: {
39+
bundler: 'metro',
40+
output: 'static',
41+
favicon: './assets/pwa-logo/apple-icon-180.png',
42+
},
43+
plugins: [
44+
'expo-router',
45+
'expo-font',
46+
'expo-web-browser',
47+
[
48+
'expo-dev-client',
49+
{
50+
launchMode: 'most-recent',
51+
},
52+
],
53+
[
54+
'expo-secure-store',
55+
{
56+
configureAndroidBackup: true,
57+
faceIDPermission: 'Allow $(PRODUCT_NAME) to access your Face ID biometric data.',
58+
},
59+
],
60+
[
61+
'expo-splash-screen',
62+
{
63+
image: './assets/pwa-logo/apple-splash-1242-2688.jpg',
64+
imageWidth: 200,
65+
resizeMode: 'contain',
66+
backgroundColor: '#ffffff',
67+
},
68+
],
69+
[
70+
'expo-image-picker',
71+
{
72+
photosPermission: 'The app accesses your photos to let you share them with your friends.',
73+
},
74+
],
75+
],
76+
experiments: {
77+
typedRoutes: true,
78+
reactCompiler: true,
79+
},
80+
extra: {
81+
router: {
82+
origin: false,
83+
},
84+
eas: {
85+
projectId: '31ba4806-f6c8-44ad-b6ca-52e410442b55',
86+
},
87+
},
88+
});

0 commit comments

Comments
 (0)