From 5e9755ea3cda25fc681f90cbc5a62bd767a14bcb Mon Sep 17 00:00:00 2001 From: Uruk Date: Mon, 22 Sep 2025 02:45:10 +0200 Subject: [PATCH] chore: standardize development environment and cleanup config files Removes IDE-specific configuration files and establishes Bun as the primary package manager. Updates project documentation to emphasize Bun usage throughout the development workflow and enhances VS Code settings for better TypeScript performance. Optimizes EAS build configuration with caching strategies and resource allocation improvements. Cleans up unused imports and improves TypeScript configuration for better development experience. --- .claude/settings.local.json | 14 -- .cursor/rules/no-custom-ios-folder-logic.mdc | 7 - .github/copilot-instructions.md | 97 ++++++---- .gitignore | 74 +++++--- .vscode/settings.json | 178 +++++++++++++++++-- components/series/SeasonEpisodesCarousel.tsx | 3 +- components/series/SeasonPicker.tsx | 3 +- eas.json | 39 ++++ modules/index.ts | 5 +- tsconfig.json | 12 +- 10 files changed, 333 insertions(+), 99 deletions(-) delete mode 100644 .claude/settings.local.json delete mode 100644 .cursor/rules/no-custom-ios-folder-logic.mdc diff --git a/.claude/settings.local.json b/.claude/settings.local.json deleted file mode 100644 index 4727881a..00000000 --- a/.claude/settings.local.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "permissions": { - "allow": [ - "Bash(find:*)", - "Bash(bun install:*)", - "Bash(bunx expo prebuild:*)", - "Bash(bunx expo run:*)", - "Bash(npx expo prebuild:*)", - "Bash(npx expo run:*)", - "Bash(xcodebuild:*)" - ], - "deny": [] - } -} diff --git a/.cursor/rules/no-custom-ios-folder-logic.mdc b/.cursor/rules/no-custom-ios-folder-logic.mdc deleted file mode 100644 index 9d2c0b84..00000000 --- a/.cursor/rules/no-custom-ios-folder-logic.mdc +++ /dev/null @@ -1,7 +0,0 @@ ---- -description: Don't write code directly in the ios folder. -globs: -alwaysApply: true ---- - -We never write code directly in the ios folder. This code is generated by expo plugins. \ No newline at end of file diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index c15d5500..f2a6524e 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -3,58 +3,93 @@ ## Project Overview Streamyfin is a cross-platform Jellyfin video streaming client built with Expo (React Native). -It supports mobile (iOS/Android) and TV platforms, and integrates with Jellyfin and Jellyseerr APIs. +It supports mobile (iOS/Android) and TV platforms, integrates with Jellyfin and Jellyseerr APIs, +and provides seamless media streaming with offline capabilities and Chromecast support. ## Main Technologies -- React Native (Expo) -- TypeScript -- React Query -- Jotai (state management) -- Jellyfin SDK (TypeScript) -- BiomeJS (code formatting/linting) -- EAS (Expo Application Services) -- Shell scripting (for automation) -- GitHub Actions (CI/CD) +- **Runtime**: Bun (JavaScript/TypeScript execution) +- **Framework**: React Native (Expo) +- **Language**: TypeScript (strict mode) +- **State Management**: Jotai (global state) + React Query (server state) +- **API SDK**: Jellyfin SDK (TypeScript) +- **Navigation**: Expo Router (file-based routing) +- **Code Quality**: BiomeJS (formatting/linting) +- **Build Platform**: EAS (Expo Application Services) +- **CI/CD**: GitHub Actions with Bun + +## Package Management + +**CRITICAL: ALWAYS use `bun` for all package management operations** + +- **NEVER use `npm`, `yarn`, `bunx` or `npx` commands** +- Use `bun install` instead of `npm install` or `yarn install` +- Use `bun add ` instead of `npm install ` +- Use `bun remove ` instead of `npm uninstall ` +- Use `bun run