Your music, beautifully tracked. All yours. (coming soon)
teal.fm
teal-fm
atproto
1{
2 "name": "@teal/amethyst",
3 "main": "expo-router/entry",
4 "version": "1.0.0",
5 "scripts": {
6 "start": "expo start",
7 "dev": "expo start",
8 "android": "expo run:android",
9 "ios": "expo run:ios",
10 "web": "expo start --web",
11 "build": "expo export --output-dir ./build --platform all",
12 "build:web": "expo export --output-dir ./build --platform web --clear",
13 "build:ios": "expo export --output-dir ./build --platform ios --clear",
14 "test": "jest",
15 "lexgen": "lex gen-server ./lexicons/generated/server/ ./lexicons/src/",
16 "install": "expo prebuild"
17 },
18 "jest": {
19 "preset": "jest-expo",
20 "setupFilesAfterEnv": [
21 "<rootDir>/jest-setup.ts"
22 ],
23 "transformIgnorePatterns": [
24 "node_modules/(?!((jest-)?react-native|@react-native(-community)?|expo(nent)?|@expo(nent)?/.*|@expo-google-fonts/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|sentry-expo|native-base|react-native-svg|@rn-primitives/.*))"
25 ]
26 },
27 "dependencies": {
28 "@aquareum/atproto-oauth-client-react-native": "^0.0.1",
29 "@atproto/api": "^0.15.14",
30 "@atproto/lex-cli": "^0.8.1",
31 "@atproto/oauth-client": "^0.3.16",
32 "@babel/plugin-transform-export-namespace-from": "^7.27.1",
33 "@expo/vector-icons": "^15.0.2",
34 "@gorhom/bottom-sheet": "^5.1.3",
35 "@react-native-async-storage/async-storage": "2.2.0",
36 "@react-native-picker/picker": "^2.11.1",
37 "@react-navigation/native": "^7.1.10",
38 "@rn-primitives/avatar": "^1.1.0",
39 "@rn-primitives/hover-card": "^1.1.0",
40 "@rn-primitives/portal": "^1.2.0",
41 "@rn-primitives/progress": "^1.1.0",
42 "@rn-primitives/slot": "^1.1.0",
43 "@rn-primitives/tooltip": "^1.1.0",
44 "@rn-primitives/types": "^1.1.0",
45 "@teal/lexicons": "workspace:*",
46 "class-variance-authority": "^0.7.1",
47 "clsx": "^2.1.1",
48 "eslint-plugin-react-compiler": "19.0.0-beta-37ed2a7-20241206",
49 "expo": "~54.0.12",
50 "expo-constants": "^18.0.9",
51 "expo-dev-client": "^6.0.13",
52 "expo-font": "~14.0.8",
53 "expo-image-picker": "^17.0.8",
54 "expo-linking": "~8.0.8",
55 "expo-router": "~6.0.10",
56 "expo-splash-screen": "~31.0.10",
57 "expo-sqlite": "^16.0.8",
58 "expo-status-bar": "~3.0.8",
59 "expo-system-ui": "~6.0.7",
60 "expo-web-browser": "~15.0.8",
61 "jest": "^29.7.0",
62 "lucide-react-native": "^0.507.0",
63 "nativewind": "^4.1.23",
64 "react": "19.1.0",
65 "react-compiler-runtime": "19.0.0-beta-37ed2a7-20241206",
66 "react-dom": "19.1.0",
67 "react-native": "0.81.4",
68 "react-native-css-interop": "^0.1.18",
69 "react-native-gesture-handler": "~2.28.0",
70 "react-native-quick-crypto": "^0.7.17",
71 "react-native-reanimated": "~4.1.2",
72 "react-native-safe-area-context": "5.6.1",
73 "react-native-screens": "~4.16.0",
74 "react-native-svg": "15.12.1",
75 "react-native-web": "~0.21.1",
76 "tailwind-merge": "^2.5.5",
77 "zustand": "^5.0.4"
78 },
79 "devDependencies": {
80 "@babel/core": "^7.26.0",
81 "@babel/runtime": "^7.26.0",
82 "@expo/metro-runtime": "~6.1.2",
83 "@expo/prebuild-config": "^54.0.4",
84 "@pmmmwh/react-refresh-webpack-plugin": "^0.5.15",
85 "@react-native/typescript-config": "^0.76.5",
86 "@testing-library/jest-native": "^5.4.3",
87 "@testing-library/react-native": "^13.3.3",
88 "@types/jest": "^30.0.0",
89 "@types/node": "^22.10.1",
90 "@types/react": "19.1.17",
91 "@types/react-dom": "19.1.11",
92 "@types/react-test-renderer": "^19.1.0",
93 "babel-plugin-module-resolver": "^5.0.2",
94 "babel-plugin-react-compiler": "19.0.0-beta-37ed2a7-20241206",
95 "eslint": "^8",
96 "eslint-config-expo": "~7.1.2",
97 "eslint-plugin-expo": "^1.0.0",
98 "react-refresh": "^0.16.0",
99 "tailwindcss": "^3.4.17",
100 "tailwindcss-animate": "^1.0.7",
101 "ts-node": "^10.9.2",
102 "typescript": "^5.9.3"
103 },
104 "private": true
105}