{
  "name": "streamyfin",
  "main": "./index",
  "version": "1.0.0",
  "scripts": {
    "submodule-reload": "git submodule update --init --remote --recursive",
    "clean": "echo y | expo prebuild --clean",
    "start": "bun run submodule-reload && expo start",
    "prebuild": "cross-env EXPO_TV=0 bun run clean",
    "prebuild:tv": "cross-env EXPO_TV=1 bun run clean",
    "ios:install-metal-toolchain": "bash scripts/ios/install-metal-toolchain.sh",
    "ios": "cross-env EXPO_TV=0 expo run:ios",
    "ios:tv": "cross-env EXPO_TV=1 expo run:ios",
    "android": "cross-env EXPO_TV=0 expo run:android",
    "android:tv": "cross-env EXPO_TV=1 expo run:android",
    "build:android:local": "cd android && cross-env NODE_ENV=production ./gradlew assembleRelease",
    "ios:unsigned-build": "cross-env EXPO_TV=0 bun scripts/ios/build-ios.ts --production",
    "prepare": "husky",
    "typecheck": "node scripts/typecheck.js",
    "check": "biome check . --max-diagnostics 1000",
    "lint": "biome check --write --unsafe --max-diagnostics 1000",
    "format": "biome format --write .",
    "doctor": "expo-doctor",
    "test": "bun run typecheck && bun run lint && bun run format && bun run doctor",
    "postinstall": "patch-package"
  },
  "dependencies": {
    "@bottom-tabs/react-navigation": "1.1.0",
    "@douglowder/expo-av-route-picker-view": "^0.0.5",
    "@expo/metro-runtime": "~6.1.1",
    "@expo/react-native-action-sheet": "^4.1.1",
    "@expo/ui": "0.2.0-beta.9",
    "@expo/vector-icons": "^15.0.3",
    "@gorhom/bottom-sheet": "5.2.8",
    "@jellyfin/sdk": "^0.13.0",
    "@react-native-community/netinfo": "^11.4.1",
    "@react-navigation/material-top-tabs": "7.4.9",
    "@react-navigation/native": "^7.0.14",
    "@shopify/flash-list": "2.0.2",
    "@tanstack/query-sync-storage-persister": "^5.90.18",
    "@tanstack/react-pacer": "^0.19.1",
    "@tanstack/react-query": "5.90.20",
    "@tanstack/react-query-persist-client": "^5.90.18",
    "axios": "^1.7.9",
    "expo": "~54.0.31",
    "expo-application": "~7.0.8",
    "expo-asset": "~12.0.12",
    "expo-background-task": "~1.0.10",
    "expo-blur": "~15.0.8",
    "expo-brightness": "~14.0.8",
    "expo-build-properties": "~1.0.10",
    "expo-constants": "18.0.13",
    "expo-crypto": "^15.0.8",
    "expo-dev-client": "~6.0.20",
    "expo-device": "~8.0.10",
    "expo-font": "~14.0.10",
    "expo-haptics": "~15.0.8",
    "expo-image": "~3.0.11",
    "expo-linear-gradient": "~15.0.8",
    "expo-linking": "~8.0.11",
    "expo-localization": "~17.0.8",
    "expo-location": "^19.0.8",
    "expo-notifications": "~0.32.16",
    "expo-router": "~6.0.21",
    "expo-screen-orientation": "~9.0.8",
    "expo-secure-store": "^15.0.8",
    "expo-sharing": "~14.0.8",
    "expo-splash-screen": "~31.0.13",
    "expo-status-bar": "~3.0.9",
    "expo-system-ui": "~6.0.9",
    "expo-task-manager": "14.0.9",
    "expo-web-browser": "~15.0.10",
    "i18next": "^25.0.0",
    "jotai": "2.16.2",
    "lodash": "4.17.23",
    "nativewind": "^2.0.11",
    "patch-package": "^8.0.0",
    "react": "19.1.0",
    "react-dom": "19.1.0",
    "react-i18next": "16.5.8",
    "react-native": "0.81.5",
    "react-native-awesome-slider": "^2.9.0",
    "react-native-bottom-tabs": "1.1.0",
    "react-native-circular-progress": "^1.4.1",
    "react-native-collapsible": "^1.6.2",
    "react-native-country-flag": "^2.0.2",
    "react-native-device-info": "^15.0.0",
    "react-native-draggable-flatlist": "^4.0.3",
    "react-native-edge-to-edge": "^1.7.0",
    "react-native-gesture-handler": "2.28.0",
    "react-native-glass-effect-view": "^1.0.0",
    "react-native-google-cast": "^4.9.1",
    "react-native-image-colors": "^2.4.0",
    "react-native-ios-context-menu": "^3.2.1",
    "react-native-ios-utilities": "5.2.0",
    "react-native-mmkv": "4.1.1",
    "react-native-nitro-modules": "0.33.1",
    "react-native-pager-view": "^6.9.1",
    "react-native-reanimated": "~4.1.1",
    "react-native-reanimated-carousel": "4.0.3",
    "react-native-safe-area-context": "~5.6.0",
    "react-native-screens": "~4.18.0",
    "react-native-svg": "15.12.1",
    "react-native-text-ticker": "^1.15.0",
    "react-native-track-player": "github:lovegaoshi/react-native-track-player#APM",
    "react-native-udp": "^4.1.7",
    "react-native-url-polyfill": "^2.0.0",
    "react-native-uuid": "^2.0.3",
    "react-native-volume-manager": "^2.0.8",
    "react-native-web": "^0.21.0",
    "react-native-worklets": "0.5.1",
    "sonner-native": "0.21.2",
    "tailwindcss": "3.3.2",
    "use-debounce": "^10.0.4",
    "zod": "4.1.13"
  },
  "devDependencies": {
    "@babel/core": "7.28.6",
    "@biomejs/biome": "2.3.11",
    "@react-native-community/cli": "20.1.1",
    "@react-native-tvos/config-tv": "0.1.6",
    "@types/jest": "29.5.14",
    "@types/lodash": "4.17.23",
    "@types/react": "19.1.17",
    "@types/react-test-renderer": "19.1.0",
    "cross-env": "10.1.0",
    "expo-doctor": "1.18.22",
    "husky": "9.1.7",
    "lint-staged": "17.0.5",
    "react-test-renderer": "19.2.3",
    "typescript": "5.9.3"
  },
  "expo": {
    "doctor": {
      "reactNativeDirectoryCheck": {
        "exclude": [
          "react-native-google-cast",
          "react-native-udp",
          "@jellyfin/sdk"
        ],
        "listUnknownPackages": false
      }
    },
    "install": {
      "exclude": [
        "react-native-screens"
      ]
    }
  },
  "private": true,
  "lint-staged": {
    "*.{js,jsx,ts,tsx}": [
      "biome check --write --unsafe --no-errors-on-unmatched"
    ],
    "*.json": [
      "biome format --write"
    ]
  },
  "trustedDependencies": [
    "unrs-resolver"
  ],
  "resolutions": {
    "expo-constants": "18.0.13"
  }
}
