├── .gitignore
├── App.tsx
├── LICENSE
├── README.md
├── app.json
├── assets
├── adaptive-icon.png
├── favicon.png
├── icon.png
└── splash.png
├── babel.config.js
├── package-lock.json
├── package.json
└── tsconfig.json
/.gitignore:
--------------------------------------------------------------------------------
1 | # Learn more https://docs.github.com/en/get-started/getting-started-with-git/ignoring-files
2 |
3 | # dependencies
4 | node_modules/
5 |
6 | # Expo
7 | .expo/
8 | dist/
9 | web-build/
10 |
11 | # Native
12 | *.orig.*
13 | *.jks
14 | *.p8
15 | *.p12
16 | *.key
17 | *.mobileprovision
18 |
19 | # Metro
20 | .metro-health-check*
21 |
22 | # debug
23 | npm-debug.*
24 | yarn-debug.*
25 | yarn-error.*
26 |
27 | # macOS
28 | .DS_Store
29 | *.pem
30 |
31 | # local env files
32 | .env*.local
33 |
34 | # typescript
35 | *.tsbuildinfo
36 |
--------------------------------------------------------------------------------
/App.tsx:
--------------------------------------------------------------------------------
1 | import React, { useState } from "react";
2 | import { StyleSheet } from "react-native";
3 | import {
4 | ViroARScene,
5 | ViroText,
6 | ViroTrackingStateConstants,
7 | ViroARSceneNavigator,
8 | ViroTrackingReason,
9 | } from "@viro-community/react-viro";
10 |
11 | const HelloWorldSceneAR = () => {
12 | const [text, setText] = useState("Initializing AR...");
13 |
14 | function onInitialized(state: any, reason: ViroTrackingReason) {
15 | console.log("guncelleme", state, reason);
16 | if (state === ViroTrackingStateConstants.TRACKING_NORMAL) {
17 | setText("Hello World!");
18 | } else if (state === ViroTrackingStateConstants.TRACKING_UNAVAILABLE) {
19 | // Handle loss of tracking
20 | }
21 | }
22 |
23 | return (
24 |
25 |
31 |
32 | );
33 | };
34 |
35 | export default () => {
36 | return (
37 |
44 | );
45 | };
46 |
47 | var styles = StyleSheet.create({
48 | f1: { flex: 1 },
49 | helloWorldTextStyle: {
50 | fontFamily: "Arial",
51 | fontSize: 30,
52 | color: "#ffffff",
53 | textAlignVertical: "center",
54 | textAlign: "center",
55 | },
56 | });
57 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2024 Viro Community
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Expo Starter Kit (TypeScript)
2 |
3 | ## Installation
4 |
5 | ```shell
6 | npm install
7 | ```
8 |
9 | ## Running
10 |
11 | ```shell
12 | npm run start`
13 | ```
14 |
15 | ## Expo Docs
16 |
17 | [Expo Docs](https://docs.expo.dev/)
18 |
19 | ## Need help?
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "expo": {
3 | "name": "expo-starter-kit-typescript",
4 | "slug": "expo-starter-kit-typescript",
5 | "version": "1.0.0",
6 | "orientation": "portrait",
7 | "icon": "./assets/icon.png",
8 | "userInterfaceStyle": "light",
9 | "splash": {
10 | "image": "./assets/splash.png",
11 | "resizeMode": "contain",
12 | "backgroundColor": "#ffffff"
13 | },
14 | "assetBundlePatterns": [
15 | "**/*"
16 | ],
17 | "ios": {
18 | "supportsTablet": true
19 | },
20 | "android": {
21 | "adaptiveIcon": {
22 | "foregroundImage": "./assets/adaptive-icon.png",
23 | "backgroundColor": "#ffffff"
24 | }
25 | },
26 | "web": {
27 | "favicon": "./assets/favicon.png"
28 | },
29 | "plugins": ["@viro-community/react-viro"]
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/assets/adaptive-icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ReactVision/expo-starter-kit-typescript/eff0721b26c723dad8a6537dda554b11353f2ba4/assets/adaptive-icon.png
--------------------------------------------------------------------------------
/assets/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ReactVision/expo-starter-kit-typescript/eff0721b26c723dad8a6537dda554b11353f2ba4/assets/favicon.png
--------------------------------------------------------------------------------
/assets/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ReactVision/expo-starter-kit-typescript/eff0721b26c723dad8a6537dda554b11353f2ba4/assets/icon.png
--------------------------------------------------------------------------------
/assets/splash.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ReactVision/expo-starter-kit-typescript/eff0721b26c723dad8a6537dda554b11353f2ba4/assets/splash.png
--------------------------------------------------------------------------------
/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = function(api) {
2 | api.cache(true);
3 | return {
4 | presets: ['babel-preset-expo'],
5 | };
6 | };
7 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "expo-starter-kit-typescript",
3 | "version": "1.0.0",
4 | "main": "node_modules/expo/AppEntry.js",
5 | "scripts": {
6 | "start": "expo start",
7 | "android": "expo start --android",
8 | "ios": "expo start --ios",
9 | "web": "expo start --web"
10 | },
11 | "dependencies": {
12 | "@viro-community/react-viro": "^2.41.0",
13 | "expo": "~50.0.4",
14 | "expo-status-bar": "~1.11.1",
15 | "react": "18.2.0",
16 | "react-native": "0.73.2"
17 | },
18 | "devDependencies": {
19 | "@babel/core": "^7.20.0",
20 | "@types/react": "~18.2.45",
21 | "typescript": "^5.1.3"
22 | },
23 | "private": true
24 | }
25 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "expo/tsconfig.base",
3 | "compilerOptions": {
4 | "strict": true
5 | }
6 | }
7 |
--------------------------------------------------------------------------------