Files
streamyfin/.github/copilot-instructions.md
retardgerman 32094fbc9f
Some checks failed
🤖 Android APK Build (Phone + TV) / 🏗️ Build Android APK (phone) (push) Has been cancelled
🤖 Android APK Build (Phone + TV) / 🏗️ Build Android APK (tv) (push) Has been cancelled
🤖 iOS IPA Build (Phone + TV) / 🏗️ Build iOS IPA (phone) (push) Has been cancelled
🔒 Lockfile Consistency Check / 🔍 Check bun.lock and package.json consistency (push) Has been cancelled
🛡️ CodeQL Analysis / 🔎 Analyze with CodeQL (actions) (push) Has been cancelled
🛡️ CodeQL Analysis / 🔎 Analyze with CodeQL (javascript-typescript) (push) Has been cancelled
🏷️🔀Merge Conflict Labeler / 🏷️ Labeling Merge Conflicts (push) Has been cancelled
🚦 Security & Quality Gate / 📝 Validate PR Title (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Vulnerable Dependencies (push) Has been cancelled
🚦 Security & Quality Gate / 🚑 Expo Doctor Check (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (check) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (format) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (lint) (push) Has been cancelled
🚦 Security & Quality Gate / 🔍 Lint & Test (typecheck) (push) Has been cancelled
🕒 Handle Stale Issues / 🗑️ Cleanup Stale Issues (push) Has been cancelled
docs: add copilot-instructions.md for context-aware AI suggestions (#1035)
Co-authored-by: lostb1t <coding-mosses0z@icloud.com>
2025-09-05 16:10:16 +02:00

2.0 KiB
Raw Permalink Blame History

Copilot Instructions for Streamyfin

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.

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)

Code Structure

  • app/ Main application code (screens, navigation, etc.)
  • components/ Reusable UI components
  • providers/ Context and API providers (e.g., JellyfinProvider.tsx)
  • utils/ Utility functions and atoms
  • assets/ Images and static assets
  • scripts/ Automation scripts (Node.js, Bash)
  • plugins/ Expo/Metro plugins
  • README.md Project documentation

Coding Conventions

  • Use TypeScript for all new code.
  • Prefer functional React components.
  • Use hooks for state and side effects.
  • Use Jotai for global state.
  • Use React Query for data fetching/caching.
  • Use BiomeJS for formatting and linting.
  • Follow the established folder structure for screens/components.

API Usage

  • Use the Jellyfin SDK for all server interactions.
  • Use the apiAtom and userAtom from JellyfinProvider for authenticated API calls.
  • For navigation, use expo-router.

Commit Messages

  • Use Conventional Commits (e.g., feat:, fix:, chore:).
  • Example: feat(player): add Chromecast support

Special Instructions

  • When suggesting code, prefer using existing atoms, hooks, and utility functions.
  • When adding new features, ensure they are accessible via both mobile and TV navigation if relevant.
  • When updating dependencies or scripts, check for compatibility with Expo and EAS.

Copilot: Please use these instructions to provide context-aware suggestions and code completions for this repository.