diff --git a/README.md b/README.md index 6364607..fa16ed1 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,8 @@ apps ├─ Navigation using Expo Router └─ Styling with Tamagui packages + ├─ api + | └─ Typesafe API calls to the backend ├─ tmdb | └─ Typesafe API calls to The Movie Database └─ provider-utils diff --git a/apps/expo/package.json b/apps/expo/package.json index 10af4a9..f5f6d6a 100644 --- a/apps/expo/package.json +++ b/apps/expo/package.json @@ -22,6 +22,7 @@ "@movie-web/colors": "*", "@movie-web/provider-utils": "*", "@movie-web/tmdb": "*", + "@movie-web/api": "*", "@octokit/rest": "^20.0.2", "@react-native-anywhere/polyfill-base64": "0.0.1-alpha.0", "@react-navigation/native": "^6.1.9", diff --git a/packages/api/package.json b/packages/api/package.json new file mode 100644 index 0000000..2559ee1 --- /dev/null +++ b/packages/api/package.json @@ -0,0 +1,31 @@ +{ + "name": "@movie-web/api", + "private": true, + "version": "0.1.0", + "type": "module", + "main": "./src/index.ts", + "exports": { + ".": "./src/index.ts" + }, + "license": "MIT", + "scripts": { + "clean": "rm -rf .turbo node_modules", + "format": "prettier --check . --ignore-path ../../.gitignore", + "lint": "eslint .", + "typecheck": "tsc --noEmit" + }, + "devDependencies": { + "@movie-web/eslint-config": "workspace:^0.2.0", + "@movie-web/prettier-config": "workspace:^0.1.0", + "@movie-web/tsconfig": "workspace:^0.1.0", + "eslint": "^8.56.0", + "prettier": "^3.1.1", + "typescript": "^5.3.3" + }, + "eslintConfig": { + "extends": [ + "@movie-web/eslint-config/base" + ] + }, + "prettier": "@movie-web/prettier-config" +} diff --git a/packages/api/src/index.ts b/packages/api/src/index.ts new file mode 100644 index 0000000..6d8a835 --- /dev/null +++ b/packages/api/src/index.ts @@ -0,0 +1 @@ +export const name = "api"; diff --git a/packages/api/tsconfig.json b/packages/api/tsconfig.json new file mode 100644 index 0000000..12305a4 --- /dev/null +++ b/packages/api/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "@movie-web/tsconfig/base.json", + "compilerOptions": { + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + }, + "include": ["*.ts", "src"], + "exclude": ["node_modules"], +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3560739..3a1f5da 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -238,6 +238,27 @@ importers: specifier: ^5.3.3 version: 5.3.3 + packages/api: + devDependencies: + '@movie-web/eslint-config': + specifier: workspace:^0.2.0 + version: link:../../tooling/eslint + '@movie-web/prettier-config': + specifier: workspace:^0.1.0 + version: link:../../tooling/prettier + '@movie-web/tsconfig': + specifier: workspace:^0.1.0 + version: link:../../tooling/typescript + eslint: + specifier: ^8.56.0 + version: 8.56.0 + prettier: + specifier: ^3.1.1 + version: 3.2.4 + typescript: + specifier: ^5.3.3 + version: 5.3.3 + packages/provider-utils: dependencies: '@movie-web/providers':